home *** CD-ROM | disk | FTP | other *** search
Unknown | 1988-07-27 | 14.2 KB | [nX^d/nX^n] |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [nX^d] |
macFileCreator | [nX^n] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 04 00 38 98 44 00 36 4d |........|..8.D.6M|
|00000010| 44 00 36 5b 04 00 02 86 | 04 00 02 0c 00 02 1e 70 |D.6[....|.......p|
|00000020| 00 02 1e 74 00 02 1e 78 | 00 02 1e 64 00 02 1e 68 |...t...x|...d...h|
|00000030| 00 00 00 00 00 00 00 00 | 01 7a 80 33 00 00 00 00 |........|.z.3....|
|00000040| 09 00 00 00 00 00 00 00 | ff 00 ff 00 00 00 00 00 |........|........|
|00000050| 00 00 01 91 02 64 00 00 | 00 00 00 41 00 00 00 00 |.....d..|...A....|
|00000060| 00 00 00 00 00 41 00 00 | 00 00 ff 00 00 00 00 00 |.....A..|........|
|00000070| 00 00 00 00 00 00 01 01 | 02 64 00 00 00 48 00 48 |........|.d...H.H|
|00000080| 00 01 00 18 03 18 02 64 | 00 1f 00 1e 02 f9 02 46 |.......d|.......F|
|00000090| 00 64 00 00 00 00 04 00 | 36 5d 00 2c 00 59 00 47 |.d......|6].,.Y.G|
|000000a0| 00 09 04 00 36 5d 00 2c | 00 59 00 47 00 09 15 6f |....6].,|.Y.G...o|
|000000b0| 00 00 00 00 00 00 00 00 | 00 ff 00 00 00 00 00 00 |........|........|
|000000c0| 38 fa 00 00 38 fa 00 00 | 38 fa 00 00 a8 f1 00 00 |8...8...|8.......|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 04 00 38 98 | 44 00 36 4d 44 00 36 5b |......8.|D.6MD.6[|
|00000110| 04 00 02 86 04 00 02 0c | 00 02 1e 70 00 02 1e 74 |........|...p...t|
|00000120| 00 02 1e 78 00 02 1e 64 | 00 02 1e 68 00 00 00 00 |...x...d|...h....|
|00000130| 00 00 00 00 01 7a 80 33 | 00 00 00 00 09 00 00 00 |.....z.3|........|
|00000140| 00 00 00 00 ff 00 ff 00 | 00 00 00 00 00 00 01 91 |........|........|
|00000150| 02 64 00 00 00 00 00 41 | 00 00 00 00 00 00 00 00 |.d.....A|........|
|00000160| 00 41 00 00 00 00 ff 00 | 00 00 00 00 00 00 00 00 |.A......|........|
|00000170| 00 00 01 01 02 64 00 00 | 00 48 00 48 00 01 00 18 |.....d..|.H.H....|
|00000180| 03 18 02 64 00 1f 00 1e | 02 f9 02 46 00 64 00 00 |...d....|...F.d..|
|00000190| 00 00 04 00 36 5d 00 2c | 00 59 00 47 00 09 04 00 |....6].,|.Y.G....|
|000001a0| 36 5d 00 2c 00 59 00 47 | 00 09 15 6f 00 00 00 00 |6].,.Y.G|...o....|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 38 fa 00 00 |........|....8...|
|000001c0| 38 fa 00 00 38 fa 00 00 | a8 f1 00 00 00 00 00 00 |8...8...|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 00 04 0d 0d 0d 0d 00 04 | 0d 0d 0d 0d 00 78 00 03 |........|.....x..|
|00000210| 00 00 00 48 00 48 00 00 | 00 00 02 da 02 28 ff e1 |...H.H..|.....(..|
|00000220| ff e2 02 f9 02 46 03 07 | 05 28 03 fc 00 02 00 00 |.....F..|.(......|
|00000230| 00 48 00 48 00 00 00 00 | 02 da 02 28 00 01 00 00 |.H.H....|...(....|
|00000240| 00 64 00 00 00 01 00 01 | 01 01 00 00 00 01 27 0f |.d......|......'.|
|00000250| 00 01 00 01 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 02 00 19 01 90 00 00 | 00 00 00 40 00 00 00 00 |........|...@....|
|00000270| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000280| 00 00 00 00 00 00 00 06 | 00 08 00 00 00 00 03 2f |........|......./|
|00000290| 7b 2a 20 4f 75 74 3a 09 | 72 65 74 75 72 6e 56 61 |{* Out:.|returnVa|
|000002a0| 6c 75 65 20 3d 20 68 01 | 61 6e 64 6c 65 20 74 6f |lue = h.|andle to|
|000002b0| 20 74 68 65 09 2a 7d 0d | 7b 2a 09 09 09 73 6f 72 | the.*}.|{*...sor|
|000002c0| 74 65 64 20 64 61 74 61 | 09 09 09 09 2a 7d 0d 7b |ted data|....*}.{|
|000002d0| 2a 09 09 09 09 09 09 09 | 09 09 2a 7d 0d 7b 2a 2d |*.......|..*}.{*-|
|000002e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 09 |--------|-------.|
|00000300| 09 2a 7d 0d 7b 2a 20 a9 | 20 31 39 38 38 2c 20 44 |.*}.{* .| 1988, D|
|00000310| 6f 6e 61 6c 64 20 4b 6f | 73 63 68 65 6b 61 09 09 |onald Ko|scheka..|
|00000320| 09 09 2a 7d 0d 7b 2a 09 | 09 41 6c 6c 20 52 69 67 |..*}.{*.|.All Rig|
|00000330| 68 74 73 20 52 65 73 65 | 72 76 65 64 09 09 09 2a |hts Rese|rved...*|
|00000340| 7d 0d 7b 2a 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |}.{*----|--------|
|00000350| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000360| 2d 2d 2d 2d 09 09 2a 7d | 0d 7b 2a 2a 2a 2a 2a 2a |----..*}|.{******|
|00000370| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000380| 2a 2a 2a 7d 0d 0d 28 2a | 2a 2a 2a 2a 2a 2a 2a 2a |***}..(*|********|
|00000390| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000003a0| 0d 09 09 42 55 49 4c 44 | 20 53 45 51 55 45 4e 43 |...BUILD| SEQUENC|
|000003b0| 45 0d 70 61 73 63 61 6c | 20 4c 69 6e 65 53 6f 72 |E.pascal| LineSor|
|000003c0| 74 2e 70 0d 6c 69 6e 6b | 20 2d 6d 20 45 4e 54 52 |t.p.link| -m ENTR|
|000003d0| 59 50 4f 49 4e 54 20 2d | 72 74 20 58 46 43 4e 3d |YPOINT -|rt XFCN=|
|000003e0| 36 35 35 33 35 20 b6 0d | 09 2d 73 6e 20 4d 61 69 |65535 ..|.-sn Mai|
|000003f0| 6e 3d 4c 69 6e 65 53 6f | 72 74 20 b6 0d 09 4c 69 |n=LineSo|rt ...Li|
|00000400| 6e 65 53 6f 72 74 2e 70 | 2e 6f 20 b6 0d 09 22 7b |neSort.p|.o ..."{|
|00000410| 4c 69 62 72 61 72 69 65 | 73 7d 22 49 6e 74 65 72 |Librarie|s}"Inter|
|00000420| 66 61 63 65 2e 6f 20 b6 | 0d 09 22 7b 50 4c 69 62 |face.o .|.."{PLib|
|00000430| 72 61 72 69 65 73 7d 22 | 50 61 73 6c 69 62 2e 6f |raries}"|Paslib.o|
|00000440| 20 b6 0d 09 2d 6f 20 22 | 7b 78 63 6d 64 73 7d 22 | ...-o "|{xcmds}"|
|00000450| 74 65 73 74 78 63 6d 64 | 73 0d 0d 2a 2a 2a 2a 2a |testxcmd|s..*****|
|00000460| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000470| 2a 2a 2a 2a 0d 0d 7b 24 | 53 20 4c 69 6e 65 53 6f |****..{$|S LineSo|
|00000480| 72 74 20 7d 0d 0d ff 00 | c1 09 01 f7 55 4e 49 54 |rt }....|....UNIT|
|00000490| ff 00 c1 09 00 f7 20 44 | 6f 6e 61 6c 64 5f 4b 6f |...... D|onald_Ko|
|000004a0| 73 63 68 65 6b 61 3b 20 | 0d 0d 7b 2d 2d 2d 2d 2d |scheka; |..{-----|
|000004b0| 2d 2d 2d 2d 2d 2d 49 4e | 54 45 52 46 41 43 45 2d |------IN|TERFACE-|
|000004c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 7d 0d 0d ff 00 |--------|---}....|
|000004d0| c1 09 01 f7 49 4e 54 45 | 52 46 41 43 45 ff 00 c1 |....INTE|RFACE...|
|000004e0| 09 00 f7 0d 0d ff 00 c1 | 09 01 f7 55 53 45 53 ff |........|...USES.|
|000004f0| 00 c1 09 00 f7 0d 09 4d | 65 6d 54 79 70 65 73 2c |.......M|emTypes,|
|00000500| 51 75 69 63 6b 44 72 61 | 77 2c 4f 53 49 6e 74 66 |QuickDra|w,OSIntf|
|00000510| 2c 54 6f 6f 6c 49 6e 74 | 66 2c 20 0d 09 50 61 63 |,ToolInt|f, ..Pac|
|00000520| 6b 49 6e 74 66 2c 48 79 | 70 65 72 58 43 6d 64 3b |kIntf,Hy|perXCmd;|
|00000530| 0d 0d 0d ff 00 c1 09 01 | f7 50 52 4f 43 45 44 55 |........|.PROCEDU|
|00000540| 52 45 ff 00 c1 09 00 f7 | 20 45 6e 74 72 79 50 6f |RE......| EntryPo|
|00000550| 69 6e 74 28 70 61 72 61 | 6d 50 74 72 3a 58 43 6d |int(para|mPtr:XCm|
|00000560| 64 50 74 72 29 3b 0d 0d | 7b 2d 2d 2d 2d 2d 2d 2d |dPtr);..|{-------|
|00000570| 2d 49 4d 50 4c 45 4d 45 | 4e 54 41 54 49 4f 4e 2d |-IMPLEME|NTATION-|
|00000580| 2d 2d 2d 2d 2d 2d 2d 2d | 7d 0d 0d ff 00 c1 09 01 |--------|}.......|
|00000590| f7 49 4d 50 4c 45 4d 45 | 4e 54 41 54 49 4f 4e ff |.IMPLEME|NTATION.|
|000005a0| 00 c1 09 00 f7 0d 0d 7b | 24 52 2d 7d 0d ff 00 c1 |.......{|$R-}....|
|000005b0| 09 01 f7 43 4f 4e 53 54 | ff 00 c1 09 00 f7 0d 03 |...CONST|........|
|000005c0| 3d 09 4e 55 4c 4c 09 09 | 09 3d 20 24 30 30 3b 0d |=.NULL..|.= $00;.|
|000005d0| 09 4e 45 57 4c 49 4e 45 | 09 09 3d 20 24 30 44 3b |.NEWLINE|..= $0D;|
|000005e0| 0d 09 41 4c 50 48 41 09 | 09 09 3d 20 24 30 30 3b |..ALPHA.|..= $00;|
|000005f0| 0d 09 4e 55 4d 45 52 49 | 43 09 09 3d 20 24 30 31 |..NUMERI|C..= $01|
|00000600| 3b 0d 09 41 53 43 45 4e | 44 09 09 3d 20 24 30 30 |;..ASCEN|D..= $00|
|00000610| 3b 0d 09 44 45 53 43 45 | 4e 44 09 09 3d 20 24 30 |;..DESCE|ND..= $0|
|00000620| 31 3b 0d 09 0d 09 4c 45 | 53 53 54 48 41 4e 09 09 |1;....LE|SSTHAN..|
|00000630| 3d 20 2d 31 3b 0d 09 45 | 51 55 41 4c 54 4f 09 09 |= -1;..E|QUALTO..|
|00000640| 3d 20 30 3b 0d 09 47 52 | 45 41 54 45 52 54 48 41 |= 0;..GR|EATERTHA|
|00000650| 4e 09 3d 20 31 3b 0d 09 | 0d ff 00 c1 09 01 f7 54 |N.= 1;..|.......T|
|00000660| 59 50 45 ff 00 c1 09 00 | f7 0d 09 53 74 72 33 31 |YPE.....|...Str31|
|00000670| 20 09 09 3d 20 53 74 72 | 69 6e 67 5b 33 31 5d 3b | ..= Str|ing[31];|
|00000680| 0d 09 0d 09 4c 69 6e 65 | 50 74 72 20 09 3d 20 5e |....Line|Ptr .= ^|
|00000690| 4c 69 6e 65 45 6c 65 6d | 3b 09 0d 09 4c 69 6e 65 |LineElem|;...Line|
|000006a0| 48 61 6e 64 09 3d 20 5e | 4c 69 6e 65 50 74 72 3b |Hand.= ^|LinePtr;|
|000006b0| 09 09 0d 09 4c 69 6e 65 | 45 6c 65 6d 09 3d 20 50 |....Line|Elem.= P|
|000006c0| 41 43 4b 45 44 20 52 45 | 43 4f 52 44 09 0d 09 20 |ACKED RE|CORD... |
|000006d0| 09 53 74 61 72 74 09 3a | 20 4c 6f 6e 67 49 6e 74 |.Start.:| LongInt|
|000006e0| 3b 09 09 0d 09 20 09 53 | 69 7a 65 09 3a 20 4c 6f |;.... .S|ize.: Lo|
|000006f0| 6e 67 49 6e 74 3b 09 09 | 0d 09 ff 00 c1 09 01 f7 |ngInt;..|........|
|00000700| 45 4e 44 ff 00 c1 09 00 | f7 3b 0d 09 0d 09 6e 75 |END.....|.;....nu|
|00000710| 6d 50 74 72 09 3d 20 5e | 4c 6f 6e 67 49 6e 74 3b |mPtr.= ^|LongInt;|
|00000720| 09 09 0d 09 6e 75 6d 48 | 61 6e 64 09 3d 20 5e 6e |....numH|and.= ^n|
|00000730| 75 6d 50 74 72 3b 09 0d | 0d 09 0d ff 00 c1 09 01 |umPtr;..|........|
|00000740| f7 50 52 4f 43 45 44 55 | 52 45 ff 00 c1 09 00 f7 |.PROCEDU|RE......|
|00000750| 20 4c 69 6e 65 53 6f 72 | 74 28 70 61 72 61 6d 50 | LineSor|t(paramP|
|00000760| 74 72 3a 58 43 6d 64 50 | 74 72 29 3b 0d 09 09 09 |tr:XCmdP|tr);....|
|00000770| 09 09 09 09 46 4f 52 57 | 41 52 44 3b 0d 0d 7b 2d |....FORW|ARD;..{-|
|00000780| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 45 6e 74 72 |--------|----Entr|
|00000790| 79 50 6f 69 6e 74 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |yPoint--|--------|
|000007a0| 2d 2d 7d 0d 0d ff 00 c1 | 09 01 f7 50 52 4f 43 45 |--}.....|...PROCE|
|000007b0| 44 55 52 45 ff 00 c1 09 | 00 f7 20 45 6e 74 72 79 |DURE....|.. Entry|
|000007c0| 50 6f 69 6e 74 28 70 61 | 72 61 6d 50 74 72 3a 20 |Point(pa|ramPtr: |
|000007d0| 58 43 6d 64 50 74 72 29 | 3b 0d 09 ff 00 c1 09 01 |XCmdPtr)|;.......|
|000007e0| f7 42 45 47 49 4e ff 00 | c1 09 00 f7 0d 09 09 4c |.BEGIN..|.......L|
|000007f0| 69 6e 65 53 6f 72 74 28 | 70 61 72 61 6d 50 74 72 |ineSort(|paramPtr|
|00000800| 29 3b 0d 09 ff 00 c1 09 | 01 f7 45 4e 44 ff 00 c1 |);......|..END...|
|00000810| 09 00 f7 3b 0d 0d 7b 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...;..{-|--------|
|00000820| 2d 2d 4c 69 6e 65 53 6f | 72 74 2d 2d 2d 2d 2d 2d |--LineSo|rt------|
|00000830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 7d 0d 0d ff 00 c1 |--------|--}.....|
|00000840| 09 01 f7 50 52 4f 43 45 | 44 55 52 45 ff 00 c1 09 |...PROCE|DURE....|
|00000850| 00 f7 20 4c 69 6e 65 53 | 6f 72 74 28 70 61 72 61 |.. LineS|ort(para|
|00000860| 6d 50 74 72 3a 58 43 6d | 64 50 74 72 29 3b 0d 28 |mPtr:XCm|dPtr);.(|
|00000870| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000880| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0d 2a 20 4d 61 69 6e |********|*.* Main|
|00000890| 20 63 6f 64 65 20 73 65 | 67 6d 65 6e 74 20 20 66 | code se|gment f|
|000008a0| 6f 6c 6c 6f 77 73 0d 2a | 2a 2a 2a 2a 2a 2a 2a 2a |ollows.*|********|
|000008b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000008c0| 29 0d ff 00 c1 09 01 f7 | 56 41 52 ff 00 c1 09 00 |).......|VAR.....|
|000008d0| f7 0d 09 53 6f 72 74 54 | 79 70 65 09 09 3a 20 49 |...SortT|ype..: I|
|000008e0| 4e 54 45 47 45 52 3b 0d | 09 53 6f 72 74 4f 72 64 |NTEGER;.|.SortOrd|
|000008f0| 65 72 09 3a 20 49 4e 54 | 45 47 45 52 3b 0d 03 1c |er.: INT|EGER;...|
|00000900| 09 4c 69 6e 65 53 74 61 | 72 74 09 3a 20 4c 69 6e |.LineSta|rt.: Lin|
|00000910| 65 48 61 6e 64 3b 0d 09 | 68 4e 75 6d 73 09 09 3a |eHand;..|hNums..:|
|00000920| 20 6e 75 6d 48 61 6e 64 | 3b 0d 09 4e 65 77 46 69 | numHand|;..NewFi|
|00000930| 65 6c 64 09 09 3a 20 48 | 61 6e 64 6c 65 3b 0d 09 |eld..: H|andle;..|
|00000940| 53 6f 72 74 53 74 72 09 | 09 3a 20 53 74 72 32 35 |SortStr.|.: Str25|
|00000950| 35 3b 0d 09 0d 7b 24 49 | 20 58 43 6d 64 47 6c 75 |5;...{$I| XCmdGlu|
|00000960| 65 2e 69 6e 63 20 7d 0d | 0d 0d 28 2a 2a 2a 2a 2a |e.inc }.|..(*****|
|00000970| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000980| 2a 2a 2a 29 0d 28 2a 2a | 2a 09 41 6c 70 68 61 20 |***).(**|*.Alpha |
|00000990| 53 6f 72 74 69 6e 67 20 | 52 6f 75 74 69 6e 65 73 |Sorting |Routines|
|000009a0| 09 09 2a 2a 2a 29 0d 28 | 2a 2a 2a 2a 2a 2a 2a 2a |..***).(|********|
|000009b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000009c0| 29 0d 0d 0d ff 00 c1 09 | 01 f7 46 55 4e 43 54 49 |).......|..FUNCTI|
|000009d0| 4f 4e ff 00 c1 09 00 f7 | 20 47 65 74 4c 69 6e 65 |ON......| GetLine|
|000009e0| 53 74 61 72 74 73 28 68 | 46 69 65 6c 64 3a 48 61 |Starts(h|Field:Ha|
|000009f0| 6e 64 6c 65 29 0d 09 09 | 09 09 3a 20 4c 69 6e 65 |ndle)...|..: Line|
|00000a00| 48 61 6e 64 3b 0d 28 2a | 2a 2a 2a 2a 2a 2a 2a 2a |Hand;.(*|********|
|00000a10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000a20| 2a 0d 2a 20 47 69 76 65 | 6e 20 61 20 70 6f 69 6e |*.* Give|n a poin|
|00000a30| 74 65 72 20 74 6f 20 61 | 20 62 6c 6f 63 6b 20 6f |ter to a| block o|
|00000a40| 66 20 74 65 78 74 2c 0d | 2a 20 73 63 61 6e 20 66 |f text,.|* scan f|
|00000a50| 6f 72 20 6c 69 6e 65 2d | 74 65 72 6d 69 6e 61 74 |or line-|terminat|
|00000a60| 6f 72 73 20 28 4e 45 57 | 4c 49 4e 45 0d 2a 20 7c |ors (NEW|LINE.* ||
|00000a70| 20 4e 55 4c 4c 29 20 61 | 6e 64 20 20 66 69 6c 6c | NULL) a|nd fill|
|00000a80| 20 6f 75 74 20 61 20 64 | 79 6e 61 6d 69 63 61 6c | out a d|ynamical|
|00000a90| 6c 79 0d 2a 20 61 6c 6c | 6f 63 61 74 65 64 20 61 |ly.* all|ocated a|
|00000aa0| 72 72 61 79 20 6f 66 20 | 6c 69 6e 65 20 73 74 61 |rray of |line sta|
|00000ab0| 72 74 73 20 0d 2a 20 69 | 6e 66 6f 72 6d 61 74 69 |rts .* i|nformati|
|00000ac0| 6f 6e 2e 0d 2a 20 0d 2a | 20 54 68 65 20 6c 69 6e |on..* .*| The lin|
|00000ad0| 65 20 73 74 61 72 74 73 | 20 61 72 72 61 79 20 63 |e starts| array c|
|00000ae0| 6f 6e 74 61 69 6e 73 20 | 0d 2a 20 74 68 65 20 6f |ontains |.* the o|
|00000af0| 66 66 73 65 74 20 69 6e | 20 74 68 65 20 74 65 78 |ffset in| the tex|
|00000b00| 74 20 74 6f 20 74 68 65 | 20 73 74 61 72 74 0d 2a |t to the| start.*|
|00000b10| 20 6f 66 20 74 68 65 20 | 6c 69 6e 65 20 61 73 20 | of the |line as |
|00000b20| 77 65 6c 6c 20 20 61 73 | 20 74 68 65 20 6c 65 6e |well as| the len|
|00000b30| 67 74 68 0d 2a 20 6f 66 | 20 74 68 65 20 6c 69 6e |gth.* of| the lin|
|00000b40| 65 20 69 6e 20 62 79 74 | 65 73 2e 20 20 0d 2a 0d |e in byt|es. .*.|
|00000b50| 2a 20 4f 66 66 73 65 74 | 73 20 61 72 65 20 75 73 |* Offset|s are us|
|00000b60| 65 64 20 74 6f 20 61 6c | 6c 6f 77 20 74 68 65 20 |ed to al|low the |
|00000b70| 72 65 63 6f 72 64 0d 2a | 20 74 6f 20 72 65 6d 61 |record.*| to rema|
|00000b80| 69 6e 20 76 61 6c 69 64 | 20 61 63 72 6f 73 73 20 |in valid| across |
|00000b90| 72 65 6c 6f 63 61 74 69 | 6f 6e 20 0d 2a 20 6f 66 |relocati|on .* of|
|00000ba0| 20 74 68 65 20 62 61 73 | 69 63 20 74 65 78 74 2e | the bas|ic text.|
|00000bb0| 0d 2a 0d 2a 20 49 6e 3a | 20 50 6f 69 6e 74 65 72 |.*.* In:| Pointer|
|00000bc0| 20 74 6f 20 61 20 62 6c | 6f 63 6b 20 6f 66 20 74 | to a bl|ock of t|
|00000bd0| 65 78 74 2c 0d 2a 20 6e | 75 6c 6c 20 74 65 72 6d |ext,.* n|ull term|
|00000be0| 69 6e 61 74 65 64 2e 0d | 2a 0d 2a 20 4f 75 74 3a |inated..|*.* Out:|
|00000bf0| 20 48 61 6e 64 6c 65 20 | 74 6f 20 61 6e 20 61 72 | Handle |to an ar|
|00000c00| 72 61 79 20 6f 66 0d 2a | 20 6c 69 6e 65 73 74 61 |ray of.*| linesta|
|00000c10| 72 74 20 69 6e 64 69 63 | 65 73 2e 0d 03 c2 2a 0d |rt indic|es....*.|
|00000c20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000c30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 29 0d ff 00 c1 09 01 |********|*)......|
|00000c40| f7 56 41 52 ff 00 c1 09 | 00 f7 0d 09 64 6f 6e 65 |.VAR....|....done|
|00000c50| 09 09 3a 20 42 4f 4f 4c | 45 41 4e 3b 0d 09 61 72 |..: BOOL|EAN;..ar|
|00000c60| 72 61 79 53 69 7a 65 3a | 20 4c 6f 6e 67 49 6e 74 |raySize:| LongInt|
|00000c70| 3b 0d 09 73 74 61 72 74 | 54 65 78 74 3a 20 4c 6f |;..start|Text: Lo|
|00000c80| 6e 67 49 6e 74 3b 20 09 | 7b 20 42 61 73 65 20 70 |ngInt; .|{ Base p|
|00000c90| 6f 69 6e 74 65 72 20 6f | 66 20 74 68 65 20 74 65 |ointer o|f the te|
|00000ca0| 78 74 20 7d 0d 09 73 69 | 7a 65 54 65 78 74 09 3a |xt }..si|zeText.:|
|00000cb0| 20 4c 6f 6e 67 49 6e 74 | 3b 20 20 09 7b 20 6c 65 | LongInt|; .{ le|
|00000cc0| 6e 67 74 68 20 6f 66 20 | 74 68 65 20 63 75 72 72 |ngth of |the curr|
|00000cd0| 65 6e 74 20 72 75 6e 7d | 0d 09 6c 69 6e 65 53 74 |ent run}|..lineSt|
|00000ce0| 61 72 74 3a 20 4c 69 6e | 65 48 61 6e 64 3b 20 09 |art: Lin|eHand; .|
|00000cf0| 7b 20 61 72 72 61 79 20 | 6f 66 20 6c 69 6e 65 53 |{ array |of lineS|
|00000d00| 74 61 72 74 73 20 70 6f | 69 6e 74 65 72 73 7d 0d |tarts po|inters}.|
|00000d10| 09 74 78 53 74 61 72 74 | 09 3a 20 50 74 72 3b 09 |.txStart|.: Ptr;.|
|00000d20| 09 7b 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 74 68 |.{ point|er to th|
|00000d30| 65 20 69 6e 70 75 74 20 | 74 65 78 74 7d 0d 09 74 |e input |text}..t|
|00000d40| 78 50 74 72 09 3a 20 50 | 74 72 3b 09 09 7b 20 70 |xPtr.: P|tr;..{ p|
|00000d50| 6f 69 6e 74 65 72 20 69 | 6e 74 6f 20 69 6e 70 75 |ointer i|nto inpu|
|00000d60| 74 20 74 65 78 74 20 28 | 46 49 45 4c 44 29 7d 0d |t text (|FIELD)}.|
|00000d70| 09 6c 69 6e 65 41 72 72 | 61 79 3a 20 4c 69 6e 65 |.lineArr|ay: Line|
|00000d80| 50 74 72 3b 09 7b 20 50 | 6f 69 6e 74 65 72 20 69 |Ptr;.{ P|ointer i|
|00000d90| 6e 74 6f 20 6c 69 6e 65 | 53 74 61 72 74 20 61 72 |nto line|Start ar|
|00000da0| 72 61 79 20 7d 0d 09 0d | ff 00 c1 09 01 f7 42 45 |ray }...|......BE|
|00000db0| 47 49 4e ff 00 c1 09 00 | f7 0d 09 ff 00 c1 09 01 |GIN.....|........|
|00000dc0| f7 49 46 ff 00 c1 09 00 | f7 20 28 68 46 69 65 6c |.IF.....|. (hFiel|
|00000dd0| 64 3c 3e 4e 49 4c 29 ff | 00 c1 09 01 f7 41 4e 44 |d<>NIL).|.....AND|
|00000de0| ff 00 c1 09 00 f7 28 68 | 46 69 65 6c 64 5e 5e 3c |......(h|Field^^<|
|00000df0| 3e 4e 55 4c 4c 29 ff 00 | c1 09 01 f7 54 48 45 4e |>NULL)..|....THEN|
|00000e00| ff 00 c1 09 00 f7 0d 09 | ff 00 c1 09 01 f7 42 45 |........|......BE|
|00000e10| 47 49 4e ff 00 c1 09 00 | f7 0d 09 48 4c 6f 63 6b |GIN.....|...HLock|
|00000e20| 28 20 68 46 69 65 6c 64 | 20 29 3b 0d 09 74 78 50 |( hField| );..txP|
|00000e30| 74 72 20 09 3a 3d 20 68 | 46 69 65 6c 64 5e 3b 0d |tr .:= h|Field^;.|
|00000e40| 09 73 74 61 72 74 54 65 | 78 74 20 3a 3d 20 4f 52 |.startTe|xt := OR|
|00000e50| 44 28 20 74 78 50 74 72 | 20 29 3b 0d 09 6c 69 6e |D( txPtr| );..lin|
|00000e60| 65 53 74 61 72 74 20 3a | 3d 20 4c 69 6e 65 48 61 |eStart :|= LineHa|
|00000e70| 6e 64 28 4e 65 77 48 61 | 6e 64 6c 65 28 30 29 29 |nd(NewHa|ndle(0))|
|00000e80| 3b 0d 09 64 6f 6e 65 09 | 3a 3d 20 46 41 4c 53 45 |;..done.|:= FALSE|
|00000e90| 3b 0d 09 0d 09 ff 00 c1 | 09 01 f7 57 48 49 4c 45 |;.......|...WHILE|
|00000ea0| ff 00 c1 09 00 f7 20 ff | 00 c1 09 01 f7 4e 4f 54 |...... .|.....NOT|
|00000eb0| ff 00 c1 09 00 f7 20 64 | 6f 6e 65 20 ff 00 c1 09 |...... d|one ....|
|00000ec0| 01 f7 44 4f ff 00 c1 09 | 00 f7 0d 09 ff 00 c1 09 |..DO....|........|
|00000ed0| 01 f7 42 45 47 49 4e ff | 00 c1 09 00 f7 0d 09 09 |..BEGIN.|........|
|00000ee0| 74 78 53 74 61 72 74 20 | 3a 3d 20 74 78 50 74 72 |txStart |:= txPtr|
|00000ef0| 3b 0d 09 09 53 63 61 6e | 54 6f 52 65 74 75 72 6e |;...Scan|ToReturn|
|00000f00| 28 20 74 78 50 74 72 20 | 29 3b 0d 09 09 0d 09 09 |( txPtr |);......|
|00000f10| ff 00 c1 09 01 f7 49 46 | ff 00 c1 09 00 f7 20 74 |......IF|...... t|
|00000f20| 78 50 74 72 5e 20 3d 20 | 4e 55 4c 4c 20 ff 00 c1 |xPtr^ = |NULL ...|
|00000f30| 09 01 f7 54 48 45 4e ff | 00 c1 09 00 f7 0d 09 09 |...THEN.|........|
|00000f40| ff 00 c1 09 01 f7 42 45 | 47 49 4e ff 00 c1 09 00 |......BE|GIN.....|
|00000f50| f7 0d 09 09 09 74 78 50 | 74 72 5e 09 3a 3d 20 4e |.....txP|tr^.:= N|
|00000f60| 45 57 4c 49 4e 45 3b 0d | 09 09 09 64 6f 6e 65 20 |EWLINE;.|...done |
|00000f70| 09 3a 3d 20 54 52 55 45 | 3b 0d 09 09 ff 00 c1 09 |.:= TRUE|;.......|
|00000f80| 01 f7 45 4e 44 ff 00 c1 | 09 00 f7 3b 0d 09 09 09 |..END...|...;....|
|00000f90| 0d 09 09 74 78 50 74 72 | 20 3a 3d 20 50 6f 69 6e |...txPtr| := Poin|
|00000fa0| 74 65 72 28 20 4f 52 44 | 28 74 78 50 74 72 29 20 |ter( ORD|(txPtr) |
|00000fb0| 2b 20 31 29 3b 0d 09 09 | 73 69 7a 65 54 65 78 74 |+ 1);...|sizeText|
|00000fc0| 20 3a 3d 20 4f 52 44 28 | 74 78 50 74 72 29 2d 4f | := ORD(|txPtr)-O|
|00000fd0| 52 44 28 74 78 53 74 61 | 72 74 29 3b 0d 09 09 0d |RD(txSta|rt);....|
|00000fe0| 03 c5 09 09 ff 00 c1 09 | 01 f7 49 46 ff 00 c1 09 |........|..IF....|
|00000ff0| 00 f7 20 73 69 7a 65 54 | 65 78 74 20 3e 20 31 20 |.. sizeT|ext > 1 |
|00001000| ff 00 c1 09 01 f7 54 48 | 45 4e ff 00 c1 09 00 f7 |......TH|EN......|
|00001010| 0d 09 09 ff 00 c1 09 01 | f7 42 45 47 49 4e ff 00 |........|.BEGIN..|
|00001020| c1 09 00 f7 0d 09 09 7b | 2a 2a 2a 20 70 6f 69 6e |.......{|*** poin|
|00001030| 74 20 74 6f 20 6e 65 78 | 74 20 72 65 63 6f 72 64 |t to nex|t record|
|00001040| 20 69 6e 20 6c 69 6e 65 | 73 74 61 72 74 73 20 61 | in line|starts a|
|00001050| 72 72 61 79 20 2a 2a 2a | 7d 0d 09 09 61 72 72 61 |rray ***|}...arra|
|00001060| 79 53 69 7a 65 20 3a 3d | 20 47 65 74 48 61 6e 64 |ySize :=| GetHand|
|00001070| 6c 65 53 69 7a 65 28 20 | 48 61 6e 64 6c 65 28 4c |leSize( |Handle(L|
|00001080| 69 6e 65 53 74 61 72 74 | 29 20 29 3b 0d 09 09 53 |ineStart|) );...S|
|00001090| 65 74 48 61 6e 64 6c 65 | 53 69 7a 65 28 20 48 61 |etHandle|Size( Ha|
|000010a0| 6e 64 6c 65 28 4c 69 6e | 65 53 74 61 72 74 29 2c |ndle(Lin|eStart),|
|000010b0| 20 0d 09 09 09 09 09 61 | 72 72 61 79 53 69 7a 65 | ......a|rraySize|
|000010c0| 20 2b 20 73 69 7a 65 4f | 66 28 20 6c 69 6e 65 45 | + sizeO|f( lineE|
|000010d0| 6c 65 6d 20 29 29 3b 0d | 09 09 6c 69 6e 65 41 72 |lem ));.|..lineAr|
|000010e0| 72 61 79 20 3a 3d 20 50 | 6f 69 6e 74 65 72 28 20 |ray := P|ointer( |
|000010f0| 4f 52 44 28 6c 69 6e 65 | 53 74 61 72 74 5e 29 20 |ORD(line|Start^) |
|00001100| 2b 20 61 72 72 61 79 53 | 69 7a 65 20 29 3b 0d 09 |+ arrayS|ize );..|
|00001110| 09 09 0d 09 09 7b 2a 2a | 2a 20 50 75 74 20 61 77 |.....{**|* Put aw|
|00001120| 61 79 20 6f 66 66 73 65 | 74 20 61 6e 64 20 6c 65 |ay offse|t and le|
|00001130| 6e 67 74 68 20 6f 66 20 | 6c 69 6e 65 20 2a 2a 2a |ngth of |line ***|
|00001140| 7d 0d 09 09 ff 00 c1 09 | 01 f7 57 49 54 48 ff 00 |}.......|..WITH..|
|00001150| c1 09 00 f7 20 6c 69 6e | 65 41 72 72 61 79 5e 20 |.... lin|eArray^ |
|00001160| ff 00 c1 09 01 f7 44 4f | ff 00 c1 09 00 f7 20 0d |......DO|...... .|
|00001170| 09 09 09 ff 00 c1 09 01 | f7 42 45 47 49 4e ff 00 |........|.BEGIN..|
|00001180| c1 09 00 f7 0d 09 09 09 | 09 53 74 61 72 74 3a 3d |........|.Start:=|
|00001190| 20 4f 52 44 28 74 78 53 | 74 61 72 74 29 20 2d 20 | ORD(txS|tart) - |
|000011a0| 73 74 61 72 74 54 65 78 | 74 3b 0d 09 09 09 09 09 |startTex|t;......|
|000011b0| 53 69 7a 65 20 3a 3d 20 | 53 69 7a 65 54 65 78 74 |Size := |SizeText|
|000011c0| 3b 0d 09 09 09 ff 00 c1 | 09 01 f7 45 4e 44 ff 00 |;.......|...END..|
|000011d0| c1 09 00 f7 3b 0d 09 09 | ff 00 c1 09 01 f7 45 4e |....;...|......EN|
|000011e0| 44 ff 00 c1 09 00 f7 3b | 0d 09 ff 00 c1 09 01 f7 |D......;|........|
|000011f0| 45 4e 44 ff 00 c1 09 00 | f7 3b 20 7b 2a 2a 2a 20 |END.....|.; {*** |
|00001200| 57 68 69 6c 65 20 2a 2a | 2a 7d 0d 09 09 0d 09 48 |While **|*}.....H|
|00001210| 55 6e 6c 6f 63 6b 28 20 | 68 46 69 65 6c 64 20 29 |Unlock( |hField )|
|00001220| 3b 0d 09 ff 00 c1 09 01 | f7 45 4e 44 ff 00 c1 09 |;.......|.END....|
|00001230| 00 f7 3b 0d 09 47 65 74 | 4c 69 6e 65 53 74 61 72 |..;..Get|LineStar|
|00001240| 74 73 20 3a 3d 20 6c 69 | 6e 65 53 74 61 72 74 3b |ts := li|neStart;|
|00001250| 0d ff 00 c1 09 01 f7 45 | 4e 44 ff 00 c1 09 00 f7 |.......E|ND......|
|00001260| 3b 0d 0d 0d ff 00 c1 09 | 01 f7 50 52 4f 43 45 44 |;.......|..PROCED|
|00001270| 55 52 45 ff 00 c1 09 00 | f7 20 20 53 6f 72 74 54 |URE.....|. SortT|
|00001280| 65 78 74 28 20 68 46 69 | 65 6c 64 3a 48 61 6e 64 |ext( hFi|eld:Hand|
|00001290| 6c 65 20 29 3b 0d 28 2a | 2a 2a 2a 2a 2a 2a 2a 2a |le );.(*|********|
|000012a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0d |********|*******.|
|000012b0| 2a 20 47 69 76 65 6e 20 | 61 20 68 61 6e 64 6c 65 |* Given |a handle|
|000012c0| 20 74 6f 20 61 6e 20 72 | 75 6e 20 6f 66 20 74 65 | to an r|un of te|
|000012d0| 78 74 2c 20 0d 2a 20 73 | 6f 72 74 20 74 68 65 20 |xt, .* s|ort the |
|000012e0| 6c 69 6e 65 73 20 6f 66 | 20 74 65 78 74 20 70 6f |lines of| text po|
|000012f0| 69 6e 74 65 64 20 74 6f | 20 61 6e 64 20 0d 2a 20 |inted to| and .* |
|00001300| 72 65 61 72 72 61 6e 67 | 65 20 74 68 65 20 61 72 |rearrang|e the ar|
|00001310| 72 61 79 20 61 63 63 6f | 72 64 69 6e 67 6c 79 2e |ray acco|rdingly.|
|00001320| 0d 2a 0d 2a 20 54 65 78 | 74 20 69 73 20 73 6f 72 |.*.* Tex|t is sor|
|00001330| 74 65 64 20 62 79 20 72 | 65 61 72 72 61 6e 67 69 |ted by r|earrangi|
|00001340| 6e 67 20 74 68 65 20 6c | 69 6e 65 0d 2a 20 73 74 |ng the l|ine.* st|
|00001350| 61 72 74 73 20 61 72 72 | 61 79 2e 0d 2a 0d 2a 20 |arts arr|ay..*.* |
|00001360| 49 6e 3a 20 09 50 6f 69 | 6e 74 65 72 20 74 6f 20 |In: .Poi|nter to |
|00001370| 20 61 72 72 61 79 20 6f | 66 20 6c 69 6e 65 73 74 | array o|f linest|
|00001380| 61 72 74 73 0d 2a 09 09 | 6c 69 6e 65 73 74 61 72 |arts.*..|linestar|
|00001390| 74 73 2c 20 6c 69 6e 65 | 63 6f 75 6e 74 20 28 67 |ts, line|count (g|
|000013a0| 6c 6f 62 61 6c 29 0d 03 | 97 2a 20 4f 75 74 3a 09 |lobal)..|.* Out:.|
|000013b0| 73 6f 72 74 65 64 20 61 | 72 72 61 79 20 6f 66 20 |sorted a|rray of |
|000013c0| 6c 69 6e 65 73 74 61 72 | 74 73 2e 0d 2a 2a 2a 2a |linestar|ts..****|
|000013d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000013e0| 2a 2a 2a 2a 29 0d ff 00 | c1 09 01 f7 56 41 52 ff |****)...|....VAR.|
|000013f0| 00 c1 09 00 f7 0d 09 64 | 6f 6e 65 09 09 09 3a 20 |.......d|one...: |
|00001400| 42 4f 4f 4c 45 41 4e 3b | 0d 09 6a 75 6d 70 2c 6c |BOOLEAN;|..jump,l|
|00001410| 65 6e 31 2c 6c 65 6e 32 | 3a 20 49 4e 54 45 47 45 |en1,len2|: INTEGE|
|00001420| 52 3b 0d 09 6e 2c 6d 2c | 6c 69 6e 65 43 6f 75 6e |R;..n,m,|lineCoun|
|00001430| 74 09 3a 20 4c 6f 6e 67 | 49 6e 74 3b 0d 09 73 74 |t.: Long|Int;..st|
|00001440| 72 31 2c 20 73 74 72 32 | 09 3a 20 50 74 72 3b 0d |r1, str2|.: Ptr;.|
|00001450| 09 74 65 6d 70 45 6c 65 | 6d 09 09 3a 20 4c 69 6e |.tempEle|m..: Lin|
|00001460| 65 45 6c 65 6d 3b 0d 09 | 65 6c 65 6d 31 2c 20 65 |eElem;..|elem1, e|
|00001470| 6c 65 6d 32 09 3a 20 4c | 69 6e 65 50 74 72 3b 0d |lem2.: L|inePtr;.|
|00001480| 0d ff 00 c1 09 01 f7 42 | 45 47 49 4e ff 00 c1 09 |.......B|EGIN....|
|00001490| 00 f7 0d 09 4c 69 6e 65 | 43 6f 75 6e 74 09 3a 3d |....Line|Count.:=|
|000014a0| 20 47 65 74 48 61 6e 64 | 6c 65 53 69 7a 65 28 20 | GetHand|leSize( |
|000014b0| 48 61 6e 64 6c 65 28 6c | 69 6e 65 53 74 61 72 74 |Handle(l|ineStart|
|000014c0| 29 20 29 3b 0d 09 4c 69 | 6e 65 43 6f 75 6e 74 09 |) );..Li|neCount.|
|000014d0| 3a 3d 20 4c 69 6e 65 43 | 6f 75 6e 74 20 44 49 56 |:= LineC|ount DIV|
|000014e0| 20 73 69 7a 65 4f 66 28 | 20 4c 69 6e 65 45 6c 65 | sizeOf(| LineEle|
|000014f0| 6d 20 29 3b 0d 09 09 0d | 09 6a 75 6d 70 20 3a 3d |m );....|.jump :=|
|00001500| 20 6c 69 6e 65 43 6f 75 | 6e 74 3b 0d 09 48 4c 6f | lineCou|nt;..HLo|
|00001510| 63 6b 28 20 48 61 6e 64 | 6c 65 28 6c 69 6e 65 53 |ck( Hand|le(lineS|
|00001520| 74 61 72 74 29 20 29 3b | 0d 09 48 4c 6f 63 6b 28 |tart) );|..HLock(|
|00001530| 20 68 46 69 65 6c 64 20 | 29 3b 0d 09 0d 09 ff 00 | hField |);......|
|00001540| c1 09 01 f7 57 48 49 4c | 45 ff 00 c1 09 00 f7 20 |....WHIL|E...... |
|00001550| 6a 75 6d 70 20 3e 20 31 | 20 ff 00 c1 09 01 f7 44 |jump > 1| ......D|
|00001560| 4f ff 00 c1 09 00 f7 0d | 09 ff 00 c1 09 01 f7 42 |O.......|.......B|
|00001570| 45 47 49 4e ff 00 c1 09 | 00 f7 0d 09 09 6a 75 6d |EGIN....|.....jum|
|00001580| 70 20 3a 3d 20 6a 75 6d | 70 20 44 49 56 20 32 3b |p := jum|p DIV 2;|
|00001590| 0d 09 09 ff 00 c1 09 01 | f7 52 45 50 45 41 54 ff |........|.REPEAT.|
|000015a0| 00 c1 09 00 f7 0d 09 09 | 09 64 6f 6e 65 20 3a 3d |........|.done :=|
|000015b0| 20 54 52 55 45 3b 0d 09 | 09 09 ff 00 c1 09 01 f7 | TRUE;..|........|
|000015c0| 46 4f 52 ff 00 c1 09 00 | f7 20 6d 20 3a 3d 20 30 |FOR.....|. m := 0|
|000015d0| 20 ff 00 c1 09 01 f7 74 | 6f ff 00 c1 09 00 f7 20 | ......t|o...... |
|000015e0| 28 20 6c 69 6e 65 43 6f | 75 6e 74 20 2d 20 6a 75 |( lineCo|unt - ju|
|000015f0| 6d 70 20 2d 20 31 20 29 | 20 ff 00 c1 09 01 f7 44 |mp - 1 )| ......D|
|00001600| 4f ff 00 c1 09 00 f7 0d | 09 09 09 ff 00 c1 09 01 |O.......|........|
|00001610| f7 42 45 47 49 4e ff 00 | c1 09 00 f7 0d 09 09 09 |.BEGIN..|........|
|00001620| 6e 20 3a 3d 20 6d 20 2b | 20 6a 75 6d 70 3b 0d 09 |n := m +| jump;..|
|00001630| 09 09 09 0d 09 7b 2a 2a | 2a 20 43 61 6c 63 75 6c |.....{**|* Calcul|
|00001640| 61 74 65 20 74 68 65 20 | 6f 66 66 73 65 74 73 20 |ate the |offsets |
|00001650| 6f 66 20 74 68 65 20 74 | 77 6f 20 65 6c 65 6d 65 |of the t|wo eleme|
|00001660| 6e 74 73 20 2a 2a 2a 7d | 0d 09 09 09 65 6c 65 6d |nts ***}|....elem|
|00001670| 31 20 3a 3d 20 4c 69 6e | 65 50 74 72 28 20 4f 52 |1 := Lin|ePtr( OR|
|00001680| 44 28 4c 69 6e 65 53 74 | 61 72 74 5e 29 20 2b 20 |D(LineSt|art^) + |
|00001690| 0d 09 09 09 09 09 28 6e | 20 2a 20 73 69 7a 65 6f |......(n| * sizeo|
|000016a0| 66 28 20 4c 69 6e 65 45 | 6c 65 6d 20 29 29 20 29 |f( LineE|lem )) )|
|000016b0| 3b 0d 09 09 09 09 09 09 | 09 09 0d 09 09 09 73 74 |;.......|......st|
|000016c0| 72 31 20 3a 3d 20 50 6f | 69 6e 74 65 72 28 20 4f |r1 := Po|inter( O|
|000016d0| 52 44 28 20 68 46 69 65 | 6c 64 5e 20 29 20 2b 20 |RD( hFie|ld^ ) + |
|000016e0| 65 6c 65 6d 31 5e 2e 53 | 74 61 72 74 29 20 3b 0d |elem1^.S|tart) ;.|
|000016f0| 09 09 09 6c 65 6e 31 3a | 3d 20 49 4e 54 45 47 45 |...len1:|= INTEGE|
|00001700| 52 28 20 65 6c 65 6d 31 | 5e 2e 53 69 7a 65 20 29 |R( elem1|^.Size )|
|00001710| 3b 0d 09 09 09 09 0d 09 | 09 09 65 6c 65 6d 32 20 |;.......|..elem2 |
|00001720| 09 3a 3d 20 4c 69 6e 65 | 50 74 72 28 20 4f 52 44 |.:= Line|Ptr( ORD|
|00001730| 28 4c 69 6e 65 53 74 61 | 72 74 5e 29 20 20 2b 0d |(LineSta|rt^) +.|
|00001740| 03 a1 09 09 09 09 09 20 | 28 6d 20 2a 20 73 69 7a |....... |(m * siz|
|00001750| 65 6f 66 28 20 4c 69 6e | 65 45 6c 65 6d 20 29 29 |eof( Lin|eElem ))|
|00001760| 20 29 3b 0d 0d 09 09 09 | 73 74 72 32 20 09 3a 3d | );.....|str2 .:=|
|00001770| 20 50 6f 69 6e 74 65 72 | 28 20 4f 52 44 28 20 68 | Pointer|( ORD( h|
|00001780| 46 69 65 6c 64 5e 20 29 | 20 2b 20 0d 09 09 09 09 |Field^ )| + .....|
|00001790| 09 65 6c 65 6d 32 5e 2e | 53 74 61 72 74 29 20 3b |.elem2^.|Start) ;|
|000017a0| 0d 09 09 09 6c 65 6e 32 | 09 3a 3d 20 49 4e 54 45 |....len2|.:= INTE|
|000017b0| 47 45 52 28 20 65 6c 65 | 6d 32 5e 2e 53 69 7a 65 |GER( ele|m2^.Size|
|000017c0| 20 29 3b 0d 09 09 09 09 | 0d 09 09 09 ff 00 c1 09 | );.....|........|
|000017d0| 01 f7 49 46 ff 00 c1 09 | 00 f7 20 49 55 4d 61 67 |..IF....|.. IUMag|
|000017e0| 53 74 72 69 6e 67 28 20 | 73 74 72 32 2c 20 73 74 |String( |str2, st|
|000017f0| 72 31 2c 20 6c 65 6e 32 | 2c 20 6c 65 6e 31 20 29 |r1, len2|, len1 )|
|00001800| 20 0d 09 09 09 3d 20 ff | 00 c1 09 01 f7 47 52 45 | ....= .|.....GRE|
|00001810| 41 54 45 52 54 48 41 4e | ff 00 c1 09 00 f7 20 ff |ATERTHAN|...... .|
|00001820| 00 c1 09 01 f7 54 48 45 | 4e ff 00 c1 09 00 f7 0d |.....THE|N.......|
|00001830| 09 09 09 ff 00 c1 09 01 | f7 42 45 47 49 4e ff 00 |........|.BEGIN..|
|00001840| c1 09 00 f7 0d 09 09 09 | 09 74 65 6d 70 45 6c 65 |........|.tempEle|
|00001850| 6d 2e 53 74 61 72 74 09 | 3a 3d 20 65 6c 65 6d 31 |m.Start.|:= elem1|
|00001860| 5e 2e 53 74 61 72 74 3b | 0d 09 09 09 09 74 65 6d |^.Start;|.....tem|
|00001870| 70 45 6c 65 6d 2e 53 69 | 7a 65 09 3a 3d 20 65 6c |pElem.Si|ze.:= el|
|00001880| 65 6d 31 5e 2e 53 69 7a | 65 3b 0d 09 09 09 09 65 |em1^.Siz|e;.....e|
|00001890| 6c 65 6d 31 5e 2e 53 74 | 61 72 74 09 3a 3d 20 65 |lem1^.St|art.:= e|
|000018a0| 6c 65 6d 32 5e 2e 53 74 | 61 72 74 3b 0d 09 09 09 |lem2^.St|art;....|
|000018b0| 09 65 6c 65 6d 31 5e 2e | 53 69 7a 65 09 09 3a 3d |.elem1^.|Size..:=|
|000018c0| 20 65 6c 65 6d 32 5e 2e | 53 69 7a 65 3b 0d 09 09 | elem2^.|Size;...|
|000018d0| 09 09 65 6c 65 6d 32 5e | 2e 53 74 61 72 74 09 3a |..elem2^|.Start.:|
|000018e0| 3d 20 74 65 6d 70 45 6c | 65 6d 2e 53 74 61 72 74 |= tempEl|em.Start|
|000018f0| 3b 0d 09 09 09 09 65 6c | 65 6d 32 5e 2e 53 69 7a |;.....el|em2^.Siz|
|00001900| 65 09 09 3a 3d 20 74 65 | 6d 70 45 6c 65 6d 2e 53 |e..:= te|mpElem.S|
|00001910| 69 7a 65 3b 0d 09 09 09 | 09 64 6f 6e 65 20 3a 3d |ize;....|.done :=|
|00001920| 20 46 41 4c 53 45 3b 0d | 09 09 09 ff 00 c1 09 01 | FALSE;.|........|
|00001930| f7 45 4e 44 ff 00 c1 09 | 00 f7 3b 0d 09 09 ff 00 |.END....|..;.....|
|00001940| c1 09 01 f7 45 4e 44 ff | 00 c1 09 00 f7 3b 20 7b |....END.|.....; {|
|00001950| 2a 2a 2a 20 46 4f 52 20 | 6c 6f 6f 70 20 2a 2a 2a |*** FOR |loop ***|
|00001960| 7d 0d 09 09 ff 00 c1 09 | 01 f7 55 4e 54 49 4c ff |}.......|..UNTIL.|
|00001970| 00 c1 09 00 f7 20 64 6f | 6e 65 3b 0d 09 ff 00 c1 |..... do|ne;.....|
|00001980| 09 01 f7 45 4e 44 ff 00 | c1 09 00 f7 3b 20 7b 2a |...END..|....; {*|
|00001990| 2a 2a 20 57 48 49 4c 45 | 20 6a 75 6d 70 20 3e 20 |** WHILE| jump > |
|000019a0| 31 20 2a 2a 2a 7d 0d 09 | 0d 09 48 55 6e 6c 6f 63 |1 ***}..|..HUnloc|
|000019b0| 6b 28 20 48 61 6e 64 6c | 65 28 6c 69 6e 65 53 74 |k( Handl|e(lineSt|
|000019c0| 61 72 74 29 20 29 3b 0d | 09 48 55 6e 6c 6f 63 6b |art) );.|.HUnlock|
|000019d0| 28 20 68 46 69 65 6c 64 | 20 29 3b 0d ff 00 c1 09 |( hField| );.....|
|000019e0| 01 f7 45 4e 44 ff 00 c1 | 09 00 f7 3b 0d 0d 0d ff |..END...|...;....|
|000019f0| 00 c1 09 01 f7 46 55 4e | 43 54 49 4f 4e ff 00 c1 |.....FUN|CTION...|
|00001a00| 09 00 f7 20 53 65 74 4e | 65 77 54 65 78 74 28 20 |... SetN|ewText( |
|00001a10| 68 46 69 65 6c 64 3a 20 | 48 61 6e 64 6c 65 3b 20 |hField: |Handle; |
|00001a20| 0d 09 09 09 09 09 09 44 | 69 72 20 3a 20 49 4e 54 |.......D|ir : INT|
|00001a30| 45 47 45 52 20 29 3a 20 | 48 61 6e 64 6c 65 3b 0d |EGER ): |Handle;.|
|00001a40| 28 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |(*******|********|
|00001a50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0d 2a |********|******.*|
|00001a60| 20 47 69 76 65 6e 20 61 | 20 70 6f 69 6e 74 65 72 | Given a| pointer|
|00001a70| 20 74 6f 20 61 20 6c 69 | 6e 65 73 74 61 72 74 73 | to a li|nestarts|
|00001a80| 20 61 72 72 61 79 2c 20 | 61 6e 64 0d 2a 20 61 20 | array, |and.* a |
|00001a90| 63 6f 72 72 65 73 70 6f | 6e 64 69 6e 67 20 62 6c |correspo|nding bl|
|00001aa0| 6f 63 6b 20 6f 66 20 74 | 65 78 74 2c 20 72 65 61 |ock of t|ext, rea|
|00001ab0| 72 72 61 6e 67 65 0d 2a | 20 74 68 65 20 74 65 78 |rrange.*| the tex|
|00001ac0| 74 20 74 6f 20 6d 61 74 | 63 68 20 74 68 65 20 6c |t to mat|ch the l|
|00001ad0| 69 6e 65 20 73 74 61 72 | 74 73 20 69 6e 20 74 68 |ine star|ts in th|
|00001ae0| 65 20 0d 03 80 2a 20 61 | 72 72 61 79 2e 20 20 54 |e ...* a|rray. T|
|00001af0| 68 69 73 20 69 73 20 75 | 73 65 66 75 6c 20 61 66 |his is u|seful af|
|00001b00| 74 65 72 20 64 6f 69 6e | 67 20 61 20 73 65 61 72 |ter doin|g a sear|
|00001b10| 63 68 0d 2a 20 73 69 6e | 63 65 20 74 68 65 20 6c |ch.* sin|ce the l|
|00001b20| 69 6e 65 73 74 61 72 74 | 73 20 61 72 72 61 79 20 |inestart|s array |
|00001b30| 77 69 6c 6c 20 62 65 20 | 69 6e 20 6f 72 64 65 72 |will be |in order|
|00001b40| 0d 2a 20 62 75 74 20 74 | 68 65 20 74 65 78 74 20 |.* but t|he text |
|00001b50| 77 6f 6e 27 74 20 62 65 | 2e 0d 2a 0d 2a 20 72 65 |won't be|..*.* re|
|00001b60| 74 75 72 6e 20 61 20 72 | 75 6e 20 6f 66 20 6e 75 |turn a r|un of nu|
|00001b70| 6c 6c 2d 74 65 72 6d 69 | 6e 61 74 65 64 20 74 65 |ll-termi|nated te|
|00001b80| 78 74 20 0d 2a 20 77 69 | 74 68 20 65 61 63 68 20 |xt .* wi|th each |
|00001b90| 6c 69 6e 65 20 4e 45 57 | 4c 49 4e 45 2d 74 65 72 |line NEW|LINE-ter|
|00001ba0| 6d 69 6e 61 74 65 64 2e | 0d 2a 0d 2a 20 49 6e 3a |minated.|.*.* In:|
|00001bb0| 20 09 48 61 6e 64 6c 65 | 20 74 6f 20 74 65 78 74 | .Handle| to text|
|00001bc0| 20 61 72 72 61 79 0d 2a | 09 09 48 61 6e 64 6c 65 | array.*|..Handle|
|00001bd0| 20 74 6f 20 6c 69 6e 65 | 73 74 61 72 74 73 20 61 | to line|starts a|
|00001be0| 72 72 61 79 2e 0d 2a 0d | 2a 20 4f 75 74 3a 20 48 |rray..*.|* Out: H|
|00001bf0| 61 6e 64 6c 65 20 6c 69 | 6e 65 73 20 6f 66 20 6e |andle li|nes of n|
|00001c00| 65 77 6c 69 6e 65 20 74 | 65 72 6d 69 6e 61 74 65 |ewline t|erminate|
|00001c10| 64 20 74 65 78 74 2e 0d | 2a 2a 2a 2a 2a 2a 2a 2a |d text..|********|
|00001c20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c30| 2a 2a 2a 2a 29 0d ff 00 | c1 09 01 f7 56 41 52 ff |****)...|....VAR.|
|00001c40| 00 c1 09 00 f7 0d 09 4c | 69 6e 65 4e 75 6d 2c 0d |.......L|ineNum,.|
|00001c50| 09 4c 69 6e 65 43 6f 75 | 6e 74 2c 0d 09 6f 6c 64 |.LineCou|nt,..old|
|00001c60| 53 69 7a 65 09 09 09 3a | 20 4c 6f 6e 67 49 6e 74 |Size...:| LongInt|
|00001c70| 3b 0d 09 4e 65 77 54 65 | 78 74 09 09 09 3a 20 48 |;..NewTe|xt...: H|
|00001c80| 61 6e 64 6c 65 3b 0d 09 | 53 74 61 72 74 4f 66 4c |andle;..|StartOfL|
|00001c90| 69 6e 65 09 09 3a 20 50 | 74 72 3b 0d 09 4e 65 78 |ine..: P|tr;..Nex|
|00001ca0| 74 4c 69 6e 65 09 09 09 | 3a 20 4c 69 6e 65 50 74 |tLine...|: LinePt|
|00001cb0| 72 3b 0d 09 0d ff 00 c1 | 09 01 f7 42 45 47 49 4e |r;......|...BEGIN|
|00001cc0| ff 00 c1 09 00 f7 09 0d | 09 4c 69 6e 65 43 6f 75 |........|.LineCou|
|00001cd0| 6e 74 09 3a 3d 20 47 65 | 74 48 61 6e 64 6c 65 53 |nt.:= Ge|tHandleS|
|00001ce0| 69 7a 65 28 20 48 61 6e | 64 6c 65 28 6c 69 6e 65 |ize( Han|dle(line|
|00001cf0| 53 74 61 72 74 29 20 29 | 3b 0d 09 4c 69 6e 65 43 |Start) )|;..LineC|
|00001d00| 6f 75 6e 74 09 3a 3d 20 | 4c 69 6e 65 43 6f 75 6e |ount.:= |LineCoun|
|00001d10| 74 20 44 49 56 20 73 69 | 7a 65 4f 66 28 20 4c 69 |t DIV si|zeOf( Li|
|00001d20| 6e 65 45 6c 65 6d 20 29 | 3b 0d 09 09 0d 09 4e 65 |neElem )|;.....Ne|
|00001d30| 77 54 65 78 74 09 09 3a | 3d 20 4e 65 77 48 61 6e |wText..:|= NewHan|
|00001d40| 64 6c 65 28 20 30 20 29 | 3b 0d 0d 09 ff 00 c1 09 |dle( 0 )|;.......|
|00001d50| 01 f7 46 4f 52 ff 00 c1 | 09 00 f7 20 4c 69 6e 65 |..FOR...|... Line|
|00001d60| 4e 75 6d 20 3a 3d 20 30 | 20 74 6f 20 4c 69 6e 65 |Num := 0| to Line|
|00001d70| 43 6f 75 6e 74 2d 31 20 | 20 ff 00 c1 09 01 f7 44 |Count-1 | ......D|
|00001d80| 4f ff 00 c1 09 00 f7 0d | 09 09 ff 00 c1 09 01 f7 |O.......|........|
|00001d90| 42 45 47 49 4e ff 00 c1 | 09 00 f7 0d 09 09 09 4e |BEGIN...|.......N|
|00001da0| 65 78 74 4c 69 6e 65 09 | 3a 3d 20 4c 69 6e 65 50 |extLine.|:= LineP|
|00001db0| 74 72 28 20 4f 52 44 28 | 20 4c 69 6e 65 53 74 61 |tr( ORD(| LineSta|
|00001dc0| 72 74 5e 20 29 20 2b 0d | 09 09 09 20 28 4c 69 6e |rt^ ) +.|... (Lin|
|00001dd0| 65 4e 75 6d 20 2a 20 73 | 69 7a 65 4f 66 28 20 4c |eNum * s|izeOf( L|
|00001de0| 69 6e 65 45 6c 65 6d 20 | 29 29 20 29 3b 0d 09 09 |ineElem |)) );...|
|00001df0| 09 53 74 61 72 74 4f 66 | 4c 69 6e 65 20 3a 3d 20 |.StartOf|Line := |
|00001e00| 50 6f 69 6e 74 65 72 28 | 20 4f 52 44 28 20 68 46 |Pointer(| ORD( hF|
|00001e10| 69 65 6c 64 5e 20 29 20 | 2b 0d 09 09 09 20 4e 65 |ield^ ) |+.... Ne|
|00001e20| 78 74 4c 69 6e 65 5e 2e | 53 74 61 72 74 20 29 3b |xtLine^.|Start );|
|00001e30| 0d 09 09 09 0d 7b 2a 2a | 2a 20 61 64 64 20 6c 65 |.....{**|* add le|
|00001e40| 6e 67 74 68 20 6f 66 20 | 6e 65 77 20 6c 69 6e 65 |ngth of |new line|
|00001e50| 20 74 6f 20 6f 75 74 70 | 75 74 20 74 65 78 74 20 | to outp|ut text |
|00001e60| 2a 2a 2a 7d 0d 03 4d 09 | 09 6f 6c 64 53 69 7a 65 |***}..M.|.oldSize|
|00001e70| 20 3a 3d 20 47 65 74 48 | 61 6e 64 6c 65 53 69 7a | := GetH|andleSiz|
|00001e80| 65 28 20 4e 65 77 54 65 | 78 74 20 29 3b 0d 09 09 |e( NewTe|xt );...|
|00001e90| 53 65 74 48 61 6e 64 6c | 65 53 69 7a 65 28 20 4e |SetHandl|eSize( N|
|00001ea0| 65 77 54 65 78 74 2c 20 | 6f 6c 64 53 69 7a 65 20 |ewText, |oldSize |
|00001eb0| 2b 20 4e 65 78 74 4c 69 | 6e 65 5e 2e 53 69 7a 65 |+ NextLi|ne^.Size|
|00001ec0| 20 29 3b 0d 09 09 09 0d | 09 7b 2a 2a 2a 20 6d 6f | );.....|.{*** mo|
|00001ed0| 76 65 20 74 68 65 20 6c | 69 6e 65 20 69 6e 74 6f |ve the l|ine into|
|00001ee0| 20 74 68 65 20 61 72 72 | 61 79 20 2a 2a 2a 7d 0d | the arr|ay ***}.|
|00001ef0| 09 09 09 42 6c 6f 63 6b | 4d 6f 76 65 28 20 53 74 |...Block|Move( St|
|00001f00| 61 72 74 4f 66 4c 69 6e | 65 2c 20 50 6f 69 6e 74 |artOfLin|e, Point|
|00001f10| 65 72 28 20 4f 52 44 28 | 20 4e 65 77 54 65 78 74 |er( ORD(| NewText|
|00001f20| 5e 20 29 20 2b 20 6f 6c | 64 53 69 7a 65 29 2c 20 |^ ) + ol|dSize), |
|00001f30| 4e 65 78 74 4c 69 6e 65 | 5e 2e 53 69 7a 65 20 29 |NextLine|^.Size )|
|00001f40| 3b 0d 09 09 ff 00 c1 09 | 01 f7 45 4e 44 ff 00 c1 |;.......|..END...|
|00001f50| 09 00 f7 3b 0d 09 0d 09 | 7b 2a 2a 2a 20 54 61 63 |...;....|{*** Tac|
|00001f60| 6b 20 61 20 4e 55 4c 4c | 20 6f 6e 20 74 68 65 20 |k a NULL| on the |
|00001f70| 65 6e 64 20 6f 66 20 74 | 68 65 20 6e 65 77 20 74 |end of t|he new t|
|00001f80| 65 78 74 20 2a 2a 2a 7d | 0d 09 6f 6c 64 53 69 7a |ext ***}|..oldSiz|
|00001f90| 65 20 09 3a 3d 20 47 65 | 74 48 61 6e 64 6c 65 53 |e .:= Ge|tHandleS|
|00001fa0| 69 7a 65 28 20 6e 65 77 | 54 65 78 74 20 29 3b 0d |ize( new|Text );.|
|00001fb0| 09 53 65 74 48 61 6e 64 | 6c 65 53 69 7a 65 28 20 |.SetHand|leSize( |
|00001fc0| 6e 65 77 54 65 78 74 2c | 20 6f 6c 64 53 69 7a 65 |newText,| oldSize|
|00001fd0| 20 2b 20 31 20 29 3b 0d | 09 53 74 61 72 74 4f 66 | + 1 );.|.StartOf|
|00001fe0| 4c 69 6e 65 20 09 3a 3d | 20 50 6f 69 6e 74 65 72 |Line .:=| Pointer|
|00001ff0| 28 20 4f 52 44 28 20 6e | 65 77 54 65 78 74 5e 20 |( ORD( n|ewText^ |
|00002000| 29 20 2b 20 6f 6c 64 53 | 69 7a 65 20 29 3b 0d 09 |) + oldS|ize );..|
|00002010| 53 74 61 72 74 4f 66 4c | 69 6e 65 5e 20 09 3a 3d |StartOfL|ine^ .:=|
|00002020| 20 4e 55 4c 4c 3b 0d 09 | 53 65 74 4e 65 77 54 65 | NULL;..|SetNewTe|
|00002030| 78 74 20 09 3a 3d 20 4e | 65 77 54 65 78 74 3b 0d |xt .:= N|ewText;.|
|00002040| ff 00 c1 09 01 f7 45 4e | 44 ff 00 c1 09 00 f7 3b |......EN|D......;|
|00002050| 0d 0d 0d 0d 28 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |....(***|********|
|00002060| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002070| 29 0d 28 2a 2a 2a 09 4e | 75 6d 62 65 72 20 53 6f |).(***.N|umber So|
|00002080| 72 74 69 6e 67 20 52 6f | 75 74 69 6e 65 73 09 2a |rting Ro|utines.*|
|00002090| 2a 2a 29 0d 28 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |**).(***|********|
|000020a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000020b0| 29 0d 0d 0d ff 00 c1 09 | 01 f7 46 55 4e 43 54 49 |).......|..FUNCTI|
|000020c0| 4f 4e ff 00 c1 09 00 f7 | 20 20 47 65 74 4e 75 6d |ON......| GetNum|
|000020d0| 73 28 20 68 46 69 65 6c | 64 20 3a 20 48 61 6e 64 |s( hFiel|d : Hand|
|000020e0| 6c 65 20 29 3a 20 6e 75 | 6d 48 61 6e 64 3b 0d 28 |le ): nu|mHand;.(|
|000020f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002100| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0d 2a 20 47 69 |********|***.* Gi|
|00002110| 76 65 6e 20 61 20 68 61 | 6e 64 6c 65 20 74 6f 20 |ven a ha|ndle to |
|00002120| 61 20 62 6c 6f 63 6b 20 | 6f 66 20 74 65 78 74 2c |a block |of text,|
|00002130| 20 73 63 61 6e 0d 2a 20 | 66 6f 72 20 6c 69 6e 65 | scan.* |for line|
|00002140| 2d 74 65 72 6d 69 6e 61 | 74 6f 72 73 20 28 4e 45 |-termina|tors (NE|
|00002150| 57 4c 49 4e 45 20 7c 20 | 4e 55 4c 4c 29 20 61 6e |WLINE | |NULL) an|
|00002160| 64 0d 2a 20 66 69 6c 6c | 20 6f 75 74 20 61 20 64 |d.* fill| out a d|
|00002170| 79 6e 61 6d 69 63 61 6c | 6c 79 20 61 6c 6c 6f 63 |ynamical|ly alloc|
|00002180| 61 74 65 64 20 61 72 72 | 61 79 20 6f 66 0d 2a 20 |ated arr|ay of.* |
|00002190| 6c 6f 6e 67 20 69 6e 74 | 65 67 65 72 73 2c 20 6f |long int|egers, o|
|000021a0| 6e 65 20 66 6f 72 20 65 | 61 63 68 20 6c 69 6e 65 |ne for e|ach line|
|000021b0| 2e 0d 2a 0d 03 bf 2a 20 | 4f 75 74 3a 20 48 61 6e |..*...* |Out: Han|
|000021c0| 64 6c 65 20 74 6f 20 61 | 6e 20 61 72 72 61 79 20 |dle to a|n array |
|000021d0| 6f 66 20 6c 6f 6e 67 49 | 6e 74 2e 0d 2a 0d 2a 2a |of longI|nt..*.**|
|000021e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000021f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 29 0d ff 00 c1 09 01 |********|*)......|
|00002200| f7 56 41 52 ff 00 c1 09 | 00 f7 0d 09 64 6f 6e 65 |.VAR....|....done|
|00002210| 09 09 3a 20 42 4f 4f 4c | 45 41 4e 3b 0d 09 61 72 |..: BOOL|EAN;..ar|
|00002220| 72 61 79 53 69 7a 65 2c | 0d 09 74 68 65 4e 75 6d |raySize,|..theNum|
|00002230| 09 3a 20 4c 6f 6e 67 49 | 6e 74 3b 0d 09 74 78 53 |.: LongI|nt;..txS|
|00002240| 74 61 72 74 09 3a 20 50 | 74 72 3b 0d 09 74 78 50 |tart.: P|tr;..txP|
|00002250| 74 72 09 09 3a 20 50 74 | 72 3b 09 09 0d 09 6e 75 |tr..: Pt|r;....nu|
|00002260| 6d 41 72 72 61 79 09 3a | 20 6e 75 6d 50 74 72 3b |mArray.:| numPtr;|
|00002270| 09 0d 09 68 4e 75 6d 09 | 09 3a 20 4e 75 6d 48 61 |...hNum.|.: NumHa|
|00002280| 6e 64 3b 09 0d 09 74 53 | 74 72 09 09 3a 20 53 74 |nd;...tS|tr..: St|
|00002290| 72 32 35 35 3b 09 0d 09 | 0d ff 00 c1 09 01 f7 42 |r255;...|.......B|
|000022a0| 45 47 49 4e ff 00 c1 09 | 00 f7 0d 09 ff 00 c1 09 |EGIN....|........|
|000022b0| 01 f7 49 46 ff 00 c1 09 | 00 f7 20 28 20 68 46 69 |..IF....|.. ( hFi|
|000022c0| 65 6c 64 20 3c 3e 20 4e | 49 4c 20 29 20 ff 00 c1 |eld <> N|IL ) ...|
|000022d0| 09 01 f7 41 4e 44 ff 00 | c1 09 00 f7 20 28 20 68 |...AND..|.... ( h|
|000022e0| 46 69 65 6c 64 5e 5e 20 | 3c 3e 20 4e 55 4c 4c 20 |Field^^ |<> NULL |
|000022f0| 29 20 ff 00 c1 09 01 f7 | 54 48 45 4e ff 00 c1 09 |) ......|THEN....|
|00002300| 00 f7 0d 09 ff 00 c1 09 | 01 f7 42 45 47 49 4e ff |........|..BEGIN.|
|00002310| 00 c1 09 00 f7 0d 09 09 | 48 4c 6f 63 6b 28 20 68 |........|HLock( h|
|00002320| 46 69 65 6c 64 20 29 3b | 0d 09 09 74 78 50 74 72 |Field );|...txPtr|
|00002330| 20 09 3a 3d 20 68 46 69 | 65 6c 64 5e 3b 0d 09 09 | .:= hFi|eld^;...|
|00002340| 68 4e 75 6d 20 09 3a 3d | 20 4e 75 6d 48 61 6e 64 |hNum .:=| NumHand|
|00002350| 28 20 4e 65 77 48 61 6e | 64 6c 65 28 20 30 20 29 |( NewHan|dle( 0 )|
|00002360| 20 29 3b 0d 09 09 64 6f | 6e 65 09 3a 3d 20 46 41 | );...do|ne.:= FA|
|00002370| 4c 53 45 3b 0d 09 09 0d | 09 09 ff 00 c1 09 01 f7 |LSE;....|........|
|00002380| 57 48 49 4c 45 ff 00 c1 | 09 00 f7 20 ff 00 c1 09 |WHILE...|... ....|
|00002390| 01 f7 4e 4f 54 ff 00 c1 | 09 00 f7 20 64 6f 6e 65 |..NOT...|... done|
|000023a0| 20 ff 00 c1 09 01 f7 44 | 4f ff 00 c1 09 00 f7 0d | ......D|O.......|
|000023b0| 09 09 ff 00 c1 09 01 f7 | 42 45 47 49 4e ff 00 c1 |........|BEGIN...|
|000023c0| 09 00 f7 0d 09 09 09 74 | 78 53 74 61 72 74 20 3a |.......t|xStart :|
|000023d0| 3d 20 74 78 50 74 72 3b | 0d 09 09 09 53 63 61 6e |= txPtr;|....Scan|
|000023e0| 54 6f 52 65 74 75 72 6e | 28 20 74 78 50 74 72 20 |ToReturn|( txPtr |
|000023f0| 29 3b 0d 09 09 09 0d 09 | 09 09 ff 00 c1 09 01 f7 |);......|........|
|00002400| 49 46 ff 00 c1 09 00 f7 | 20 74 78 50 74 72 5e 20 |IF......| txPtr^ |
|00002410| 3d 20 4e 55 4c 4c 20 ff | 00 c1 09 01 f7 54 48 45 |= NULL .|.....THE|
|00002420| 4e ff 00 c1 09 00 f7 0d | 09 09 09 09 64 6f 6e 65 |N.......|....done|
|00002430| 20 3a 3d 20 54 52 55 45 | 0d 09 09 09 ff 00 c1 09 | := TRUE|........|
|00002440| 01 f7 45 4c 53 45 ff 00 | c1 09 00 f7 0d 09 09 09 |..ELSE..|........|
|00002450| 09 74 78 50 74 72 5e 20 | 3a 3d 20 4e 55 4c 4c 3b |.txPtr^ |:= NULL;|
|00002460| 0d 09 09 09 0d 09 09 09 | 5a 65 72 6f 54 6f 50 61 |........|ZeroToPa|
|00002470| 73 28 20 74 78 53 74 61 | 72 74 2c 20 74 53 74 72 |s( txSta|rt, tStr|
|00002480| 20 29 3b 0d 09 09 09 74 | 68 65 4e 75 6d 20 09 3a | );....t|heNum .:|
|00002490| 3d 20 53 74 72 54 6f 4e | 75 6d 28 20 74 53 74 72 |= StrToN|um( tStr|
|000024a0| 20 29 3b 0d 09 09 09 74 | 78 50 74 72 20 09 3a 3d | );....t|xPtr .:=|
|000024b0| 20 50 6f 69 6e 74 65 72 | 28 20 4f 52 44 28 74 78 | Pointer|( ORD(tx|
|000024c0| 50 74 72 29 20 2b 20 31 | 29 3b 0d 09 09 09 0d 09 |Ptr) + 1|);......|
|000024d0| 09 09 61 72 72 61 79 53 | 69 7a 65 20 3a 3d 20 47 |..arrayS|ize := G|
|000024e0| 65 74 48 61 6e 64 6c 65 | 53 69 7a 65 28 20 48 61 |etHandle|Size( Ha|
|000024f0| 6e 64 6c 65 28 20 68 4e | 75 6d 20 29 20 29 3b 0d |ndle( hN|um ) );.|
|00002500| 09 09 09 53 65 74 48 61 | 6e 64 6c 65 53 69 7a 65 |...SetHa|ndleSize|
|00002510| 28 20 48 61 6e 64 6c 65 | 28 20 68 4e 75 6d 20 29 |( Handle|( hNum )|
|00002520| 2c 20 61 72 72 61 79 53 | 69 7a 65 20 2b 20 73 69 |, arrayS|ize + si|
|00002530| 7a 65 4f 66 28 20 6c 6f | 6e 67 49 6e 74 20 29 29 |zeOf( lo|ngInt ))|
|00002540| 3b 0d 09 09 09 6e 75 6d | 41 72 72 61 79 20 3a 3d |;....num|Array :=|
|00002550| 20 50 6f 69 6e 74 65 72 | 28 20 4f 52 44 28 20 68 | Pointer|( ORD( h|
|00002560| 4e 75 6d 5e 29 20 2b 20 | 61 72 72 61 79 53 69 7a |Num^) + |arraySiz|
|00002570| 65 20 29 3b 0d 03 9e 09 | 09 09 6e 75 6d 41 72 72 |e );....|..numArr|
|00002580| 61 79 5e 3a 3d 20 74 68 | 65 4e 75 6d 3b 0d 09 09 |ay^:= th|eNum;...|
|00002590| 09 0d 09 09 ff 00 c1 09 | 01 f7 45 4e 44 ff 00 c1 |........|..END...|
|000025a0| 09 00 f7 3b 20 7b 2a 2a | 2a 20 57 68 69 6c 65 20 |...; {**|* While |
|000025b0| 2a 2a 2a 7d 0d 09 09 48 | 55 6e 6c 6f 63 6b 28 20 |***}...H|Unlock( |
|000025c0| 68 46 69 65 6c 64 20 29 | 3b 0d 09 ff 00 c1 09 01 |hField )|;.......|
|000025d0| f7 45 4e 44 ff 00 c1 09 | 00 f7 3b 0d 09 47 65 74 |.END....|..;..Get|
|000025e0| 4e 75 6d 73 20 3a 3d 20 | 68 4e 75 6d 3b 0d ff 00 |Nums := |hNum;...|
|000025f0| c1 09 01 f7 45 4e 44 ff | 00 c1 09 00 f7 3b 0d 0d |....END.|.....;..|
|00002600| ff 00 c1 09 01 f7 50 52 | 4f 43 45 44 55 52 45 ff |......PR|OCEDURE.|
|00002610| 00 c1 09 00 f7 20 20 53 | 6f 72 74 4e 75 6d 73 28 |..... S|ortNums(|
|00002620| 20 74 68 65 4e 75 6d 73 | 20 3a 20 4e 75 6d 48 61 | theNums| : NumHa|
|00002630| 6e 64 20 29 3b 0d 28 2a | 2a 2a 2a 2a 2a 2a 2a 2a |nd );.(*|********|
|00002640| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 0d 2a 20 47 |********|****.* G|
|00002650| 69 76 65 6e 20 61 20 70 | 6f 69 6e 74 65 72 20 74 |iven a p|ointer t|
|00002660| 6f 20 61 6e 20 61 72 72 | 61 79 20 6f 66 20 6c 6f |o an arr|ay of lo|
|00002670| 6e 67 69 6e 74 73 2c 20 | 0d 2a 20 73 6f 72 74 20 |ngints, |.* sort |
|00002680| 74 68 65 20 6e 75 6d 62 | 65 72 73 20 20 61 6e 64 |the numb|ers and|
|00002690| 20 72 65 61 72 72 61 6e | 67 65 20 74 68 65 20 61 | rearran|ge the a|
|000026a0| 72 72 61 79 0d 2a 20 61 | 63 63 6f 72 64 69 6e 67 |rray.* a|ccording|
|000026b0| 6c 79 2e 0d 2a 0d 2a 20 | 49 6e 3a 20 09 48 61 6e |ly..*.* |In: .Han|
|000026c0| 64 6c 65 20 74 6f 20 61 | 6e 20 61 72 72 61 79 20 |dle to a|n array |
|000026d0| 6f 66 20 6c 6f 6e 67 49 | 6e 74 73 3b 0d 2a 20 09 |of longI|nts;.* .|
|000026e0| 09 75 73 65 73 20 6c 69 | 6e 65 63 6f 75 6e 74 20 |.uses li|necount |
|000026f0| 61 6e 64 20 6c 69 6e 65 | 4e 75 6d 3b 0d 2a 20 4f |and line|Num;.* O|
|00002700| 75 74 3a 09 73 6f 72 74 | 65 64 20 61 72 72 61 79 |ut:.sort|ed array|
|00002710| 20 6f 66 20 6c 69 6e 65 | 73 74 61 72 74 73 2e 0d | of line|starts..|
|00002720| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002730| 2a 2a 2a 2a 29 0d ff 00 | c1 09 01 f7 56 41 52 ff |****)...|....VAR.|
|00002740| 00 c1 09 00 f7 0d 09 64 | 6f 6e 65 09 09 09 09 3a |.......d|one....:|
|00002750| 20 42 4f 4f 4c 45 41 4e | 3b 0d 09 6a 75 6d 70 2c | BOOLEAN|;..jump,|
|00002760| 6c 65 6e 31 2c 6c 65 6e | 32 09 3a 20 49 4e 54 45 |len1,len|2.: INTE|
|00002770| 47 45 52 3b 0d 09 6e 2c | 6d 09 2c 73 77 61 70 2c |GER;..n,|m.,swap,|
|00002780| 0d 09 6c 69 6e 65 43 6f | 75 6e 74 09 09 3a 20 4c |..lineCo|unt..: L|
|00002790| 6f 6e 67 49 6e 74 3b 0d | 09 6e 75 6d 31 2c 6e 75 |ongInt;.|.num1,nu|
|000027a0| 6d 32 09 09 3a 20 6e 75 | 6d 50 74 72 3b 0d 0d ff |m2..: nu|mPtr;...|
|000027b0| 00 c1 09 01 f7 42 45 47 | 49 4e ff 00 c1 09 00 f7 |.....BEG|IN......|
|000027c0| 0d 09 4c 69 6e 65 43 6f | 75 6e 74 20 3a 3d 20 47 |..LineCo|unt := G|
|000027d0| 65 74 48 61 6e 64 6c 65 | 53 69 7a 65 28 20 48 61 |etHandle|Size( Ha|
|000027e0| 6e 64 6c 65 28 74 68 65 | 4e 75 6d 73 29 20 29 20 |ndle(the|Nums) ) |
|000027f0| 44 49 56 20 73 69 7a 65 | 4f 66 28 20 4c 6f 6e 67 |DIV size|Of( Long|
|00002800| 49 6e 74 20 29 3b 0d 09 | 6a 75 6d 70 20 3a 3d 20 |Int );..|jump := |
|00002810| 6c 69 6e 65 43 6f 75 6e | 74 3b 0d 09 0d 09 ff 00 |lineCoun|t;......|
|00002820| c1 09 01 f7 57 48 49 4c | 45 ff 00 c1 09 00 f7 20 |....WHIL|E...... |
|00002830| 6a 75 6d 70 20 3e 20 31 | 20 ff 00 c1 09 01 f7 44 |jump > 1| ......D|
|00002840| 4f ff 00 c1 09 00 f7 0d | 09 ff 00 c1 09 01 f7 42 |O.......|.......B|
|00002850| 45 47 49 4e ff 00 c1 09 | 00 f7 0d 09 09 6a 75 6d |EGIN....|.....jum|
|00002860| 70 20 3a 3d 20 6a 75 6d | 70 20 44 49 56 20 32 3b |p := jum|p DIV 2;|
|00002870| 0d 09 09 ff 00 c1 09 01 | f7 52 45 50 45 41 54 ff |........|.REPEAT.|
|00002880| 00 c1 09 00 f7 0d 09 09 | 09 64 6f 6e 65 20 3a 3d |........|.done :=|
|00002890| 20 54 52 55 45 3b 0d 09 | 09 09 ff 00 c1 09 01 f7 | TRUE;..|........|
|000028a0| 46 4f 52 ff 00 c1 09 00 | f7 20 6d 20 3a 3d 20 30 |FOR.....|. m := 0|
|000028b0| 20 ff 00 c1 09 01 f7 74 | 6f ff 00 c1 09 00 f7 20 | ......t|o...... |
|000028c0| 28 20 6c 69 6e 65 43 6f | 75 6e 74 20 2d 20 6a 75 |( lineCo|unt - ju|
|000028d0| 6d 70 20 2d 20 31 20 29 | 20 ff 00 c1 09 01 f7 44 |mp - 1 )| ......D|
|000028e0| 4f ff 00 c1 09 00 f7 0d | 09 09 09 ff 00 c1 09 01 |O.......|........|
|000028f0| f7 42 45 47 49 4e ff 00 | c1 09 00 f7 0d 09 09 09 |.BEGIN..|........|
|00002900| 09 6e 20 3a 3d 20 6d 20 | 2b 20 6a 75 6d 70 3b 0d |.n := m |+ jump;.|
|00002910| 09 09 09 09 0d 03 8d 09 | 09 7b 2a 2a 2a 20 43 61 |........|.{*** Ca|
|00002920| 6c 63 75 6c 61 74 65 20 | 74 68 65 20 6f 66 66 73 |lculate |the offs|
|00002930| 65 74 73 20 6f 66 20 74 | 68 65 20 74 77 6f 20 65 |ets of t|he two e|
|00002940| 6c 65 6d 65 6e 74 73 20 | 2a 2a 2a 7d 0d 09 09 09 |lements |***}....|
|00002950| 09 6e 75 6d 31 09 3a 3d | 20 50 6f 69 6e 74 65 72 |.num1.:=| Pointer|
|00002960| 28 4f 52 44 28 74 68 65 | 4e 75 6d 73 5e 29 20 2b |(ORD(the|Nums^) +|
|00002970| 20 28 6e 20 2a 20 73 69 | 7a 65 6f 66 28 20 4c 6f | (n * si|zeof( Lo|
|00002980| 6e 67 49 6e 74 20 29 29 | 20 29 3b 0d 09 09 09 09 |ngInt ))| );.....|
|00002990| 6e 75 6d 32 20 09 3a 3d | 20 50 6f 69 6e 74 65 72 |num2 .:=| Pointer|
|000029a0| 28 4f 52 44 28 74 68 65 | 4e 75 6d 73 5e 29 20 2b |(ORD(the|Nums^) +|
|000029b0| 20 28 6d 20 2a 20 73 69 | 7a 65 6f 66 28 20 4c 6f | (m * si|zeof( Lo|
|000029c0| 6e 67 49 6e 74 20 29 29 | 20 29 3b 0d 0d 09 09 09 |ngInt ))| );.....|
|000029d0| 09 ff 00 c1 09 01 f7 49 | 46 ff 00 c1 09 00 f7 20 |.......I|F...... |
|000029e0| 6e 75 6d 32 5e 20 3e 20 | 6e 75 6d 31 5e 20 ff 00 |num2^ > |num1^ ..|
|000029f0| c1 09 01 f7 54 48 45 4e | ff 00 c1 09 00 f7 0d 09 |....THEN|........|
|00002a00| 09 09 09 ff 00 c1 09 01 | f7 42 45 47 49 4e ff 00 |........|.BEGIN..|
|00002a10| c1 09 00 f7 0d 09 09 09 | 09 09 73 77 61 70 20 3a |........|..swap :|
|00002a20| 3d 20 6e 75 6d 31 5e 3b | 0d 09 09 09 09 09 6e 75 |= num1^;|......nu|
|00002a30| 6d 31 5e 3a 3d 20 6e 75 | 6d 32 5e 3b 0d 09 09 09 |m1^:= nu|m2^;....|
|00002a40| 09 09 6e 75 6d 32 5e 3a | 3d 20 73 77 61 70 3b 0d |..num2^:|= swap;.|
|00002a50| 09 09 09 09 09 64 6f 6e | 65 20 3a 3d 20 46 41 4c |.....don|e := FAL|
|00002a60| 53 45 3b 0d 09 09 09 09 | ff 00 c1 09 01 f7 45 4e |SE;.....|......EN|
|00002a70| 44 ff 00 c1 09 00 f7 3b | 0d 09 09 09 ff 00 c1 09 |D......;|........|
|00002a80| 01 f7 45 4e 44 ff 00 c1 | 09 00 f7 3b 20 7b 2a 2a |..END...|...; {**|
|00002a90| 2a 20 46 4f 52 20 6c 6f | 6f 70 20 2a 2a 2a 7d 0d |* FOR lo|op ***}.|
|00002aa0| 09 09 ff 00 c1 09 01 f7 | 55 4e 54 49 4c ff 00 c1 |........|UNTIL...|
|00002ab0| 09 00 f7 20 64 6f 6e 65 | 3b 0d 09 ff 00 c1 09 01 |... done|;.......|
|00002ac0| f7 45 4e 44 ff 00 c1 09 | 00 f7 3b 20 7b 2a 2a 2a |.END....|..; {***|
|00002ad0| 20 57 48 49 4c 45 20 6a | 75 6d 70 20 3e 20 31 20 | WHILE j|ump > 1 |
|00002ae0| 2a 2a 2a 7d 0d ff 00 c1 | 09 01 f7 45 4e 44 ff 00 |***}....|...END..|
|00002af0| c1 09 00 f7 3b 0d 0d 0d | ff 00 c1 09 01 f7 46 55 |....;...|......FU|
|00002b00| 4e 43 54 49 4f 4e ff 00 | c1 09 00 f7 20 53 65 74 |NCTION..|.... Set|
|00002b10| 4e 65 77 4e 75 6d 73 28 | 20 68 4e 75 6d 3a 20 6e |NewNums(| hNum: n|
|00002b20| 75 6d 48 61 6e 64 3b 20 | 44 69 72 20 3a 20 49 4e |umHand; |Dir : IN|
|00002b30| 54 45 47 45 52 20 29 3a | 20 48 61 6e 64 6c 65 3b |TEGER ):| Handle;|
|00002b40| 0d 28 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.(******|********|
|00002b50| 2a 2a 2a 2a 2a 2a 0d 2a | 20 47 69 76 65 6e 20 61 |******.*| Given a|
|00002b60| 20 68 61 6e 64 6c 65 20 | 74 6f 20 61 6e 20 61 72 | handle |to an ar|
|00002b70| 72 61 79 20 6f 66 20 0d | 2a 20 6c 6f 6e 67 69 6e |ray of .|* longin|
|00002b80| 74 73 2c 20 63 6f 6e 76 | 65 72 74 20 20 74 68 65 |ts, conv|ert the|
|00002b90| 6d 20 62 61 63 6b 20 74 | 6f 20 0d 2a 20 73 74 72 |m back t|o .* str|
|00002ba0| 69 6e 67 73 20 61 6e 64 | 20 70 75 74 20 74 68 65 |ings and| put the|
|00002bb0| 6d 20 61 77 61 79 20 69 | 6e 0d 2a 20 20 61 20 6e |m away i|n.* a n|
|00002bc0| 65 77 20 68 61 6e 64 6c | 65 20 61 73 20 74 65 78 |ew handl|e as tex|
|00002bd0| 74 0d 2a 0d 2a 20 49 6e | 3a 20 09 48 61 6e 64 6c |t.*.* In|: .Handl|
|00002be0| 65 20 74 6f 20 6e 75 6d | 20 61 72 72 61 79 0d 2a |e to num| array.*|
|00002bf0| 09 09 0d 2a 20 4f 75 74 | 3a 20 48 61 6e 64 6c 65 |...* Out|: Handle|
|00002c00| 20 6c 69 6e 65 73 20 6f | 66 20 6e 65 77 6c 69 6e | lines o|f newlin|
|00002c10| 65 20 0d 2a 20 74 65 72 | 6d 69 6e 61 74 65 64 20 |e .* ter|minated |
|00002c20| 74 65 78 74 2e 0d 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |text..**|********|
|00002c30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 29 0d ff 00 c1 |********|***)....|
|00002c40| 09 01 f7 56 41 52 ff 00 | c1 09 00 f7 0d 09 69 6e |...VAR..|......in|
|00002c50| 64 65 78 2c 20 69 6e 74 | 43 6f 75 6e 74 2c 0d 09 |dex, int|Count,..|
|00002c60| 6f 6c 64 53 69 7a 65 2c | 20 6e 75 6d 4c 65 6e 09 |oldSize,| numLen.|
|00002c70| 3a 20 4c 6f 6e 67 49 6e | 74 3b 0d 09 6e 65 78 4e |: LongIn|t;..nexN|
|00002c80| 75 6d 09 09 09 3a 20 4e | 75 6d 50 74 72 3b 0d 09 |um...: N|umPtr;..|
|00002c90| 4e 65 77 54 65 78 74 09 | 09 09 3a 20 48 61 6e 64 |NewText.|..: Hand|
|00002ca0| 6c 65 3b 0d 03 ab 09 74 | 65 6d 70 50 74 72 09 09 |le;....t|empPtr..|
|00002cb0| 09 3a 20 50 74 72 3b 0d | 09 74 65 6d 70 53 74 72 |.: Ptr;.|.tempStr|
|00002cc0| 09 09 09 3a 20 53 74 72 | 32 35 35 3b 0d 09 0d ff |...: Str|255;....|
|00002cd0| 00 c1 09 01 f7 42 45 47 | 49 4e ff 00 c1 09 00 f7 |.....BEG|IN......|
|00002ce0| 09 0d 09 4e 65 77 54 65 | 78 74 09 09 3a 3d 20 4e |...NewTe|xt..:= N|
|00002cf0| 65 77 48 61 6e 64 6c 65 | 28 20 30 20 29 3b 0d 09 |ewHandle|( 0 );..|
|00002d00| 69 6e 74 43 6f 75 6e 74 | 09 3a 3d 20 28 47 65 74 |intCount|.:= (Get|
|00002d10| 48 61 6e 64 6c 65 53 69 | 7a 65 28 20 48 61 6e 64 |HandleSi|ze( Hand|
|00002d20| 6c 65 28 68 4e 75 6d 29 | 20 29 20 44 49 56 20 73 |le(hNum)| ) DIV s|
|00002d30| 69 7a 65 4f 66 28 20 4c | 6f 6e 67 49 6e 74 20 29 |izeOf( L|ongInt )|
|00002d40| 29 3b 0d 09 0d 09 ff 00 | c1 09 01 f7 46 4f 52 ff |);......|....FOR.|
|00002d50| 00 c1 09 00 f7 20 69 6e | 64 65 78 20 3a 3d 20 30 |..... in|dex := 0|
|00002d60| 20 ff 00 c1 09 01 f7 74 | 6f ff 00 c1 09 00 f7 20 | ......t|o...... |
|00002d70| 69 6e 74 43 6f 75 6e 74 | 2d 31 20 ff 00 c1 09 01 |intCount|-1 .....|
|00002d80| f7 20 44 4f ff 00 c1 09 | 00 f7 0d 09 09 ff 00 c1 |. DO....|........|
|00002d90| 09 01 f7 42 45 47 49 4e | ff 00 c1 09 00 f7 0d 09 |...BEGIN|........|
|00002da0| 09 09 6e 65 78 4e 75 6d | 09 3a 3d 20 4e 75 6d 50 |..nexNum|.:= NumP|
|00002db0| 74 72 28 20 4f 52 44 28 | 20 68 4e 75 6d 5e 20 29 |tr( ORD(| hNum^ )|
|00002dc0| 20 2b 0d 09 09 09 09 09 | 09 20 28 69 6e 64 65 78 | +......|. (index|
|00002dd0| 20 2a 20 73 69 7a 65 4f | 66 28 20 4c 6f 6e 67 49 | * sizeO|f( LongI|
|00002de0| 6e 74 20 29 29 20 29 3b | 0d 09 09 09 74 65 6d 70 |nt )) );|....temp|
|00002df0| 53 74 72 20 3a 3d 20 4e | 75 6d 54 6f 53 74 72 28 |Str := N|umToStr(|
|00002e00| 20 6e 65 78 4e 75 6d 5e | 20 29 3b 0d 09 09 09 6e | nexNum^| );....n|
|00002e10| 75 6d 4c 65 6e 20 20 3a | 3d 20 4c 6f 6e 67 49 6e |umLen :|= LongIn|
|00002e20| 74 28 20 4f 52 44 28 20 | 74 65 6d 70 53 74 72 5b |t( ORD( |tempStr[|
|00002e30| 30 5d 20 29 20 29 3b 0d | 09 09 09 0d 09 09 7b 2a |0] ) );.|......{*|
|00002e40| 2a 2a 20 61 64 64 20 6c | 65 6e 67 74 68 20 6f 66 |** add l|ength of|
|00002e50| 20 6e 65 77 20 6c 69 6e | 65 20 74 6f 20 6f 75 74 | new lin|e to out|
|00002e60| 70 75 74 20 74 65 78 74 | 09 2a 2a 2a 7d 0d 09 09 |put text|.***}...|
|00002e70| 09 6f 6c 64 53 69 7a 65 | 20 3a 3d 20 47 65 74 48 |.oldSize| := GetH|
|00002e80| 61 6e 64 6c 65 53 69 7a | 65 28 20 4e 65 77 54 65 |andleSiz|e( NewTe|
|00002e90| 78 74 20 29 3b 0d 09 09 | 09 53 65 74 48 61 6e 64 |xt );...|.SetHand|
|00002ea0| 6c 65 53 69 7a 65 28 20 | 4e 65 77 54 65 78 74 2c |leSize( |NewText,|
|00002eb0| 20 6f 6c 64 53 69 7a 65 | 20 2b 20 4e 75 6d 4c 65 | oldSize| + NumLe|
|00002ec0| 6e 20 2b 20 31 20 29 3b | 0d 09 09 09 0d 09 09 7b |n + 1 );|.......{|
|00002ed0| 2a 2a 2a 20 6d 6f 76 65 | 20 74 68 65 20 6c 69 6e |*** move| the lin|
|00002ee0| 65 20 69 6e 74 6f 20 74 | 68 65 20 61 72 72 61 79 |e into t|he array|
|00002ef0| 09 09 09 2a 2a 2a 7d 0d | 09 09 09 54 65 6d 70 50 |...***}.|...TempP|
|00002f00| 74 72 20 3a 3d 20 50 6f | 69 6e 74 65 72 28 20 4f |tr := Po|inter( O|
|00002f10| 52 44 28 20 40 74 65 6d | 70 53 74 72 20 29 20 2b |RD( @tem|pStr ) +|
|00002f20| 20 31 20 29 3b 0d 09 09 | 09 42 6c 6f 63 6b 4d 6f | 1 );...|.BlockMo|
|00002f30| 76 65 28 20 54 65 6d 70 | 50 74 72 20 2c 20 50 6f |ve( Temp|Ptr , Po|
|00002f40| 69 6e 74 65 72 28 4f 52 | 44 28 20 4e 65 77 54 65 |inter(OR|D( NewTe|
|00002f50| 78 74 5e 29 2b 6f 6c 64 | 53 69 7a 65 29 2c 20 4e |xt^)+old|Size), N|
|00002f60| 75 6d 4c 65 6e 29 3b 0d | 09 09 09 54 65 6d 70 50 |umLen);.|...TempP|
|00002f70| 74 72 20 3a 3d 20 50 6f | 69 6e 74 65 72 28 4f 52 |tr := Po|inter(OR|
|00002f80| 44 28 20 4e 65 77 54 65 | 78 74 5e 29 20 2b 20 6f |D( NewTe|xt^) + o|
|00002f90| 6c 64 53 69 7a 65 20 2b | 20 4e 75 6d 4c 65 6e 29 |ldSize +| NumLen)|
|00002fa0| 3b 0d 09 09 09 54 65 6d | 70 50 74 72 5e 20 3a 3d |;....Tem|pPtr^ :=|
|00002fb0| 20 4e 45 57 4c 49 4e 45 | 3b 0d 09 09 ff 00 c1 09 | NEWLINE|;.......|
|00002fc0| 01 f7 45 4e 44 ff 00 c1 | 09 00 f7 3b 0d 09 0d 09 |..END...|...;....|
|00002fd0| 7b 2a 2a 2a 20 54 61 63 | 6b 20 61 20 4e 55 4c 4c |{*** Tac|k a NULL|
|00002fe0| 20 6f 6e 20 74 68 65 20 | 65 6e 64 20 6f 66 20 74 | on the |end of t|
|00002ff0| 68 65 20 6e 65 77 20 74 | 65 78 74 20 2a 2a 2a 7d |he new t|ext ***}|
|00003000| 0d 09 6f 6c 64 53 69 7a | 65 20 09 09 3a 3d 20 47 |..oldSiz|e ..:= G|
|00003010| 65 74 48 61 6e 64 6c 65 | 53 69 7a 65 28 20 6e 65 |etHandle|Size( ne|
|00003020| 77 54 65 78 74 20 29 3b | 0d 09 53 65 74 48 61 6e |wText );|..SetHan|
|00003030| 64 6c 65 53 69 7a 65 28 | 20 6e 65 77 54 65 78 74 |dleSize(| newText|
|00003040| 2c 20 6f 6c 64 53 69 7a | 65 20 2b 20 31 20 29 3b |, oldSiz|e + 1 );|
|00003050| 0d 02 53 09 74 65 6d 70 | 50 74 72 20 09 09 3a 3d |..S.temp|Ptr ..:=|
|00003060| 20 50 6f 69 6e 74 65 72 | 28 20 4f 52 44 28 20 6e | Pointer|( ORD( n|
|00003070| 65 77 54 65 78 74 5e 20 | 29 20 2b 20 6f 6c 64 53 |ewText^ |) + oldS|
|00003080| 69 7a 65 20 29 3b 0d 09 | 54 65 6d 70 50 74 72 5e |ize );..|TempPtr^|
|00003090| 20 09 09 3a 3d 20 4e 55 | 4c 4c 3b 0d 09 53 65 74 | ..:= NU|LL;..Set|
|000030a0| 4e 65 77 4e 75 6d 73 09 | 09 3a 3d 20 4e 65 77 54 |NewNums.|.:= NewT|
|000030b0| 65 78 74 3b 0d ff 00 c1 | 09 01 f7 45 4e 44 ff 00 |ext;....|...END..|
|000030c0| c1 09 00 f7 3b 0d 0d 0d | 7b 2a 2a 2a 2a 2a 2a 2a |....;...|{*******|
|000030d0| 20 4d 61 69 6e 20 42 6c | 6f 63 6b 20 66 6f 72 20 | Main Bl|ock for |
|000030e0| 4c 69 6e 65 53 6f 72 74 | 20 2a 2a 2a 2a 2a 2a 2a |LineSort| *******|
|000030f0| 7d 0d ff 00 c1 09 01 f7 | 42 45 47 49 4e ff 00 c1 |}.......|BEGIN...|
|00003100| 09 00 f7 0d 09 4e 65 77 | 46 69 65 6c 64 20 3a 3d |.....New|Field :=|
|00003110| 20 4e 49 4c 3b 0d 09 0d | 09 ff 00 c1 09 01 f7 57 | NIL;...|.......W|
|00003120| 49 54 48 ff 00 c1 09 00 | f7 20 70 61 72 61 6d 50 |ITH.....|. paramP|
|00003130| 74 72 5e 20 ff 00 c1 09 | 01 f7 44 4f ff 00 c1 09 |tr^ ....|..DO....|
|00003140| 00 f7 0d 09 09 ff 00 c1 | 09 01 f7 49 46 ff 00 c1 |........|...IF...|
|00003150| 09 00 f7 20 28 70 61 72 | 61 6d 73 5b 31 5d 20 3c |... (par|ams[1] <|
|00003160| 3e 20 4e 49 4c 29 20 ff | 00 c1 09 01 f7 41 4e 44 |> NIL) .|.....AND|
|00003170| ff 00 c1 09 00 f7 20 28 | 70 61 72 61 6d 73 5b 31 |...... (|params[1|
|00003180| 5d 5e 5e 20 3c 3e 20 4e | 55 4c 4c 29 20 ff 00 c1 |]^^ <> N|ULL) ...|
|00003190| 09 01 f7 54 48 45 4e ff | 00 c1 09 00 f7 0d 09 09 |...THEN.|........|
|000031a0| 09 ff 00 c1 09 01 f7 42 | 45 47 49 4e ff 00 c1 09 |.......B|EGIN....|
|000031b0| 00 f7 0d 09 09 09 09 53 | 6f 72 74 54 79 70 65 20 |.......S|ortType |
|000031c0| 3a 3d 20 41 4c 50 48 41 | 3b 0d 09 09 09 09 53 6f |:= ALPHA|;.....So|
|000031d0| 72 74 4f 72 64 65 72 20 | 3a 3d 20 41 53 43 45 4e |rtOrder |:= ASCEN|
|000031e0| 44 3b 0d 09 09 09 09 0d | 09 09 09 09 ff 00 c1 09 |D;......|........|
|000031f0| 01 f7 49 46 ff 00 c1 09 | 00 f7 20 70 61 72 61 6d |..IF....|.. param|
|00003200| 73 5b 32 5d 20 3c 3e 20 | 4e 49 4c 20 ff 00 c1 09 |s[2] <> |NIL ....|
|00003210| 01 f7 54 48 45 4e ff 00 | c1 09 00 f7 0d 09 09 09 |..THEN..|........|
|00003220| 09 09 ff 00 c1 09 01 f7 | 42 45 47 49 4e ff 00 c1 |........|BEGIN...|
|00003230| 09 00 f7 0d 09 09 09 09 | 09 09 5a 65 72 6f 54 6f |........|..ZeroTo|
|00003240| 50 61 73 28 20 70 61 72 | 61 6d 73 5b 32 5d 5e 2c |Pas( par|ams[2]^,|
|00003250| 20 73 6f 72 74 53 74 72 | 20 29 3b 0d 09 09 09 09 | sortStr| );.....|
|00003260| 09 09 ff 00 c1 09 01 f7 | 49 46 ff 00 c1 09 00 f7 |........|IF......|
|00003270| 20 53 74 72 69 6e 67 45 | 71 75 61 6c 28 20 27 4e | StringE|qual( 'N|
|00003280| 55 4d 45 52 49 43 27 2c | 20 73 6f 72 74 53 74 72 |UMERIC',| sortStr|
|00003290| 20 29 20 20 ff 00 c1 09 | 01 f7 54 48 45 4e ff 00 | ) ....|..THEN..|
|000032a0| c1 09 00 f7 20 0d 03 a5 | 09 09 09 09 09 09 09 53 |.... ...|.......S|
|000032b0| 6f 72 74 54 79 70 65 20 | 3a 3d 20 4e 55 4d 45 52 |ortType |:= NUMER|
|000032c0| 49 43 3b 0d 09 09 09 09 | 09 ff 00 c1 09 01 f7 45 |IC;.....|.......E|
|000032d0| 4e 44 ff 00 c1 09 00 f7 | 3b 0d 09 09 09 09 09 0d |ND......|;.......|
|000032e0| 09 09 09 09 ff 00 c1 09 | 01 f7 49 46 ff 00 c1 09 |........|..IF....|
|000032f0| 00 f7 20 70 61 72 61 6d | 73 5b 33 5d 20 3c 3e 20 |.. param|s[3] <> |
|00003300| 4e 49 4c 20 ff 00 c1 09 | 01 f7 54 48 45 4e ff 00 |NIL ....|..THEN..|
|00003310| c1 09 00 f7 0d 09 09 09 | 09 09 ff 00 c1 09 01 f7 |........|........|
|00003320| 42 45 47 49 4e ff 00 c1 | 09 00 f7 0d 09 09 09 09 |BEGIN...|........|
|00003330| 09 09 5a 65 72 6f 54 6f | 50 61 73 28 20 70 61 72 |..ZeroTo|Pas( par|
|00003340| 61 6d 73 5b 33 5d 5e 2c | 20 73 6f 72 74 53 74 72 |ams[3]^,| sortStr|
|00003350| 20 29 3b 0d 09 09 09 09 | 09 09 ff 00 c1 09 01 f7 | );.....|........|
|00003360| 49 46 ff 00 c1 09 00 f7 | 20 53 74 72 69 6e 67 45 |IF......| StringE|
|00003370| 71 75 61 6c 28 20 27 44 | 45 53 43 45 4e 44 49 4e |qual( 'D|ESCENDIN|
|00003380| 47 27 2c 20 73 6f 72 74 | 53 74 72 20 29 20 20 ff |G', sort|Str ) .|
|00003390| 00 c1 09 01 f7 54 48 45 | 4e ff 00 c1 09 00 f7 20 |.....THE|N...... |
|000033a0| 0d 09 09 09 09 09 09 09 | 53 6f 72 74 4f 72 64 65 |........|SortOrde|
|000033b0| 72 20 3a 3d 20 44 45 53 | 43 45 4e 44 3b 0d 09 09 |r := DES|CEND;...|
|000033c0| 09 09 09 ff 00 c1 09 01 | f7 45 4e 44 ff 00 c1 09 |........|.END....|
|000033d0| 00 f7 3b 0d 09 09 09 0d | 09 09 09 09 ff 00 c1 09 |..;.....|........|
|000033e0| 01 f7 43 41 53 45 ff 00 | c1 09 00 f7 20 53 6f 72 |..CASE..|.... Sor|
|000033f0| 74 54 79 70 65 20 ff 00 | c1 09 01 f7 4f 46 ff 00 |tType ..|....OF..|
|00003400| c1 09 00 f7 0d 09 09 09 | 09 41 4c 50 48 41 3a 0d |........|.ALPHA:.|
|00003410| 09 09 09 09 ff 00 c1 09 | 01 f7 42 45 47 49 4e ff |........|..BEGIN.|
|00003420| 00 c1 09 00 f7 0d 09 09 | 09 09 09 4c 69 6e 65 53 |........|...LineS|
|00003430| 74 61 72 74 20 09 3a 3d | 20 47 65 74 4c 69 6e 65 |tart .:=| GetLine|
|00003440| 53 74 61 72 74 73 28 20 | 70 61 72 61 6d 73 5b 31 |Starts( |params[1|
|00003450| 5d 20 29 3b 0d 09 09 09 | 09 09 53 6f 72 74 54 65 |] );....|..SortTe|
|00003460| 78 74 28 20 70 61 72 61 | 6d 73 5b 31 5d 20 29 3b |xt( para|ms[1] );|
|00003470| 0d 09 09 09 09 09 6e 65 | 77 46 69 65 6c 64 20 3a |......ne|wField :|
|00003480| 3d 20 53 65 74 4e 65 77 | 54 65 78 74 28 20 70 61 |= SetNew|Text( pa|
|00003490| 72 61 6d 73 5b 31 5d 2c | 20 53 6f 72 74 4f 72 64 |rams[1],| SortOrd|
|000034a0| 65 72 20 29 3b 0d 09 09 | 09 09 09 44 69 73 70 6f |er );...|...Dispo|
|000034b0| 73 48 61 6e 64 6c 65 28 | 20 48 61 6e 64 6c 65 28 |sHandle(| Handle(|
|000034c0| 20 4c 69 6e 65 53 74 61 | 72 74 20 29 20 29 3b 0d | LineSta|rt ) );.|
|000034d0| 09 09 09 09 ff 00 c1 09 | 01 f7 45 4e 44 ff 00 c1 |........|..END...|
|000034e0| 09 00 f7 3b 0d 09 09 09 | 09 0d 09 09 09 09 4e 55 |...;....|......NU|
|000034f0| 4d 45 52 49 43 3a 0d 09 | 09 09 09 ff 00 c1 09 01 |MERIC:..|........|
|00003500| f7 42 45 47 49 4e ff 00 | c1 09 00 f7 0d 09 09 09 |.BEGIN..|........|
|00003510| 09 09 68 4e 75 6d 73 20 | 3a 3d 20 47 65 74 4e 75 |..hNums |:= GetNu|
|00003520| 6d 73 28 20 70 61 72 61 | 6d 73 5b 31 5d 20 29 3b |ms( para|ms[1] );|
|00003530| 0d 09 09 09 09 09 53 6f | 72 74 4e 75 6d 73 28 20 |......So|rtNums( |
|00003540| 68 4e 75 6d 73 20 29 3b | 0d 09 09 09 09 09 6e 65 |hNums );|......ne|
|00003550| 77 46 69 65 6c 64 20 3a | 3d 20 53 65 74 4e 65 77 |wField :|= SetNew|
|00003560| 4e 75 6d 73 28 20 68 4e | 75 6d 73 2c 20 53 6f 72 |Nums( hN|ums, Sor|
|00003570| 74 4f 72 64 65 72 20 29 | 3b 0d 09 09 09 09 09 44 |tOrder )|;......D|
|00003580| 69 73 70 6f 73 48 61 6e | 64 6c 65 28 20 48 61 6e |isposHan|dle( Han|
|00003590| 64 6c 65 28 20 68 4e 75 | 6d 73 20 29 20 29 3b 0d |dle( hNu|ms ) );.|
|000035a0| 09 09 09 09 ff 00 c1 09 | 01 f7 45 4e 44 ff 00 c1 |........|..END...|
|000035b0| 09 00 f7 3b 0d 09 09 09 | 09 09 09 0d 09 09 09 09 |...;....|........|
|000035c0| ff 00 c1 09 01 f7 45 4e | 44 ff 00 c1 09 00 f7 3b |......EN|D......;|
|000035d0| 20 7b 2a 2a 2a 20 43 41 | 53 45 20 53 6f 72 74 4f | {*** CA|SE SortO|
|000035e0| 72 64 65 72 20 4f 46 20 | 2a 2a 2a 7d 0d 09 09 09 |rder OF |***}....|
|000035f0| ff 00 c1 09 01 f7 45 4e | 44 ff 00 c1 09 00 f7 3b |......EN|D......;|
|00003600| 20 0d 09 0d 09 70 61 72 | 61 6d 50 74 72 5e 2e 72 | ....par|amPtr^.r|
|00003610| 65 74 75 72 6e 56 61 6c | 75 65 20 3a 3d 20 6e 65 |eturnVal|ue := ne|
|00003620| 77 46 69 65 6c 64 3b 0d | ff 00 c1 09 01 f7 45 4e |wField;.|......EN|
|00003630| 44 ff 00 c1 09 00 f7 3b | 20 0d 0d ff 00 c1 09 01 |D......;| .......|
|00003640| f7 45 4e 44 ff 00 c1 09 | 00 f7 2e 0d 0d 00 0c 04 |.END....|........|
|00003650| 00 02 00 00 40 04 00 02 | 06 00 40 00 00 02 39 fc |....@...|..@...9.|
|00003660| 00 48 01 44 00 48 00 09 | 01 68 01 b0 01 f0 08 02 |.H.D.H..|.h......|
|00003670| 40 02 88 02 d0 03 18 03 | 60 03 a8 03 f0 00 04 38 |@.......|`......8|
|00003680| 04 80 f7 ff 00 14 0a 00 | f7 ff 00 c1 09 00 f7 7b |........|.......{|
|00003690| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000036a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 7d 0d 7b 2a 20 46 69 |********|*}.{* Fi|
|000036b0| 6c 65 3a 20 4c 69 6e 65 | 53 6f 72 74 2e 70 09 09 |le: Line|Sort.p..|
|000036c0| 09 09 09 2a 7d 0d 7b 2a | 09 09 09 09 09 09 09 09 |...*}.{*|........|
|000036d0| 09 2a 7d 0d 7b 2a 20 53 | 6f 72 74 73 20 6c 69 6e |.*}.{* S|orts lin|
|000036e0| 65 73 20 6f 66 20 74 65 | 78 74 20 28 64 65 6c 69 |es of te|xt (deli|
|000036f0| 6d 69 74 65 64 20 62 79 | 09 2a 7d 0d 7b 2a 20 6e |mited by|.*}.{* n|
|00003700| 65 77 6c 69 6e 65 20 61 | 6e 64 20 6e 75 6c 6c 20 |ewline a|nd null |
|00003710| 74 65 72 6d 69 6e 61 74 | 65 64 29 2e 20 09 09 2a |terminat|ed). ..*|
|00003720| 7d 0d 7b 2a 20 52 65 74 | 75 72 6e 73 20 74 68 65 |}.{* Ret|urns the|
|00003730| 20 73 6f 72 74 65 64 20 | 20 63 6f 6e 74 61 69 6e | sorted | contain|
|00003740| 65 72 2e 09 09 2a 7d 0d | 7b 2a 2d 2d 2d 2d 2d 2d |er...*}.|{*------|
|00003750| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003760| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 09 09 2a 7d 0d 7b |--------|--..*}.{|
|00003770| 2a 20 49 6e 3a 09 70 61 | 72 61 6d 50 74 72 3d 70 |* In:.pa|ramPtr=p|
|00003780| 6f 69 6e 74 65 72 20 74 | 6f 20 74 68 65 20 58 43 |ointer t|o the XC|
|00003790| 4d 44 09 2a 7d 0d 7b 2a | 09 09 50 61 72 61 6d 65 |MD.*}.{*|..Parame|
|000037a0| 74 65 72 20 42 6c 6f 63 | 6b 09 09 09 09 2a 7d 0d |ter Bloc|k....*}.|
|000037b0| 7b 2a 09 09 09 09 09 09 | 09 09 09 2a 7d 0d 7b 2a |{*......|...*}.{*|
|000037c0| 09 70 61 72 61 6d 73 5b | 31 5d 20 3d 20 68 61 6e |.params[|1] = han|
|000037d0| 64 6c 65 20 74 6f 20 74 | 68 65 20 74 65 78 74 09 |dle to t|he text.|
|000037e0| 09 2a 7d 0d 7b 2a 09 70 | 61 72 61 6d 73 5b 32 5d |.*}.{*.p|arams[2]|
|000037f0| 20 3d 20 68 61 6e 64 6c | 65 20 74 6f 20 73 6f 72 | = handl|e to sor|
|00003800| 74 20 74 79 70 65 09 09 | 2a 7d 0d 7b 2a 09 09 28 |t type..|*}.{*..(|
|00003810| 41 4c 50 48 41 2c 20 4e | 55 4d 45 52 49 43 29 09 |ALPHA, N|UMERIC).|
|00003820| 09 09 09 2a 7d 0d 7b 2a | 09 09 70 61 72 61 6d 73 |...*}.{*|..params|
|00003830| 5b 33 5d 20 3d 20 53 6f | 72 74 20 4f 72 64 65 72 |[3] = So|rt Order|
|00003840| 09 09 09 2a 7d 0d 7b 2a | 09 09 28 41 53 43 45 4e |...*}.{*|..(ASCEN|
|00003850| 44 49 4e 47 2c 20 44 45 | 53 43 45 4e 44 49 4e 47 |DING, DE|SCENDING|
|00003860| 29 09 09 2a 7d 0d 7b 2a | 09 09 09 09 09 09 09 09 |)..*}.{*|........|
|00003870| 09 2a 7d 0d 7b 2a 20 44 | 65 66 61 75 6c 74 73 20 |.*}.{* D|efaults |
|00003880| 3a 20 41 4c 50 48 41 2c | 20 41 53 43 45 4e 44 49 |: ALPHA,| ASCENDI|
|00003890| 4e 47 09 09 09 2a 7d 0d | 00 60 64 00 36 5d 00 99 |NG...*}.|.`d.6]..|
|000038a0| 24 00 02 8e 01 7a 24 00 | 05 bf 01 8c 24 00 08 fe |$....z$.|....$...|
|000038b0| 01 44 24 00 0c 1c 01 3b | 24 00 0f e0 01 32 24 00 |.D$....;|$....2$.|
|000038c0| 13 a7 01 3b 24 00 17 40 | 01 20 24 00 1a e3 01 32 |...;$..@|. $....2|
|000038d0| 24 00 1e 65 01 0e 24 00 | 21 b4 01 5f 24 00 25 75 |$..e..$.|!.._$.%u|
|000038e0| 01 5f 24 00 29 15 01 44 | 24 00 2c a4 01 17 24 00 |._$.)..D|$.,...$.|
|000038f0| 30 51 00 c6 24 00 32 a6 | 01 5f |0Q..$.2.|._ |
+--------+-------------------------+-------------------------+--------+--------+